InI檔放於Server多入存取時,會錯誤無法存取?? |
尚未結案
|
jeffreck
高階會員 發表:247 回覆:340 積分:197 註冊:2003-01-23 發送簡訊給我 |
請教各位前輩 InI檔放於Server多入存取時,會錯誤無法存取?? 我有一個系統,當執行時會去讀取'I:\AppINI\LogSale.ini'
這個ini檔取得SQL Server名稱,I:\ 是網路伺服器主機的目錄(Win2000 Server) 因同時約有 30台PC在使用這系統,有時I:\AppINI\LogSale.ini 這檔案會無法開啟
去查看Server 會有User 一直在讀取這檔案不關閉,但用檔案總管去開LogSale.ini
,可以正常開啟,但程式就無法執行,直到我強行在Server關閉User的存取,
之後才可以正常存取 這問題並不是每次都會,是偶爾會發生,不知問題在那?? 感謝各位前輩!!
procedure TSYSData.DataModuleCreate(Sender: TObject); var strINIPath: string; infINIFile: Tinifile; StrDataSource: string; begin FV_OpenRight := False; strINIPath := 'I:\AppINI\LogSale.ini'; if not FileExists(strINIPath) then begin FunMessageBox.Message_OK_ERROR('找不到檔案:' strINIPath, '系統載入錯誤'); abort; end; //----------------------------------------- try infINIFile := TiniFile.Create(strINIPath); except FunMessageBox.Message_OK_ERROR('無法開啟檔案:' strINIPath, '系統載入錯誤'); infINIFile.Free; abort; end; //-------------- StrDataSource := infINIFile.ReadString('DataBase', 'DataSource', ''); infINIFile.Free; if StrDataSource = '' then begin FunMessageBox.Message_OK_ERROR('無法取得伺服器名稱', '系統載入錯誤'); abort; end; //-------- try FV_DataSource := StrDataSource; self.cnt_SaleTable.Close; self.cnt_SaleTable.ConnectionString := 'Provider=SQLOLEDB.1;' 'Integrated Security=SSPI;' 'Persist Security Info=False;' 'Initial Catalog=A_SaleTable;' 'Data Source=' StrDataSource ';' 'Use Procedure for Prepare=1;' 'Auto Translate=True;' 'Packet Size=4096;' 'Use Encryption for Data=False;' 'Tag with column collation when possible=False'; self.cnt_SaleTable.Open; except FunMessageBox.Message_OK_ERROR('無法連線資料庫:' StrDataSource, '系統載入錯誤'); self.cnt_SaleTable.ConnectionString := ''; abort; end; FV_OpenRight := True end; |
tonytop
中階會員 發表:6 回覆:114 積分:89 註冊:2003-12-04 發送簡訊給我 |
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |