設計 multi-user 的 Paradox 資料庫程式應注意的事情 - 每一台工作站的 BDE config 的 System\Init 的 Local Share 都要設 為 true (否則可能會生 Index out of date 的錯誤) 在 peer-to-peer 網路環境下的多人存取, LocalShare 都必須設為 TRUE, 而 WindowsNT 也被視為 peer-to-peer 網路, 所以也應設為 TRUE. Novell NetWare 網路則設不設都沒關係. - 當 LocalShare 為 TRUE 時, 程式執行檔不要和資料庫檔案放在一起. - 所有工作站的 BDE config 的 Drivers\Native\Paradox 的 NetDir 要指向相同的網路共用目錄, 如果要避免網路磁碟機對應的問題, 可 使用 UNC 命名方式, 如: \\ServerName\SharedDirectoryName\Directory 註: 你可以使用 ExpandUncName 函式 - NetFileDir 和 Private Dir 必須指向不同的路徑 如果發生 Index out of date, 你可以替各個 Table 指定一個 TSession 元件, 設定如下: // NetFileDir 指向任何網路共用路徑, 但不能與資料庫路徑相同 Session.NetFileDir := 'NET:\COMMON'; // PrivateDir 指向任何本機 Local 路徑或程式執行目錄 Session.PrivateDir := 'C:\TEMP'; - 執行檔和資料庫檔案放在同一目錄下 - 如果出現錯誤訊息: "該目錄為其他.NET檔控制,無法開啟" (...controled by another...) 1. 請先檢查網路上有無其他使用者, 若有, 則將其執行的應用程式結束. 2. 確定網路上已沒有任何程式存取該資料庫後, 如果仍無法順利開啟 資料庫, 請檢查該資料庫目錄下是否有 *.LCK 檔案, 並將其刪除. - 如果 Server 是 NT4 , 且出現 Index out of date 的錯誤, 可試著把 optimistic locking 關掉: [HKEY_LOCAL_MACHINE\SYSTEM\CurrentcontrolSet\Services\ LanmanServer\Parameters] "EnableOplocks" = dword:00000000 "CachedOpenLimit" = dword:00000000 設定好之後重新開機