VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

區網環境下如何辨識檔案已被開啟

 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
lester8888



註冊時間: 2014-08-11
文章: 43


第 1 樓

發表發表於: 星期一 十二月 21, 2015 3:21 pm    文章主題: 區網環境下如何辨識檔案已被開啟 引言回覆

各位大大你好: 小弟在vfp6.0 區網環境下使用 used()指令時,發現在我的電腦開啟的dbf 可被測得 .T. 或 .F. ,但如何是另一台電腦開啟的dbf 測出的結果都是 .F. ,請問是否於區網環境下無法使用此指令?
回頂端
檢視會員個人資料 發送私人訊息
bx1166



註冊時間: 2011-12-06
文章: 273


第 2 樓

發表發表於: 星期一 十二月 21, 2015 5:44 pm    文章主題: 引言回覆

Share ?

Set exclusive off
回頂端
檢視會員個人資料 發送私人訊息
ckp6250



註冊時間: 2004-07-30
文章: 1537


第 3 樓

發表發表於: 星期一 十二月 21, 2015 5:53 pm    文章主題: 引言回覆

區網環境中要判斷dbf是否被他台開啟,比較好的方法是用
代碼:

Try
    Use abc Exclusive
Catch To oError
   wait 'other computer useing......' window
Endtry


但若vfp6沒有try可用時,
或許改用 fopen() 來判斷也行
回頂端
檢視會員個人資料 發送私人訊息
syntech



註冊時間: 2003-05-16
文章: 3880
來自: Taipei,Taiwan

第 4 樓

發表發表於: 星期一 十二月 21, 2015 8:13 pm    文章主題: 引言回覆

明明有 ON ERROR F(X) 可用
_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
bx1166



註冊時間: 2011-12-06
文章: 273


第 5 樓

發表發表於: 星期二 十二月 22, 2015 11:17 am    文章主題: 引言回覆

flock() 也可以
回頂端
檢視會員個人資料 發送私人訊息
lester8888



註冊時間: 2014-08-11
文章: 43


第 6 樓

發表發表於: 星期二 十二月 22, 2015 2:57 pm    文章主題: 引言回覆

謝謝前輩的指點 ,因為曾用 on error 指令, 爬文後發現此用法 如下 : 因可解決問題 tks

ON ERROR DO errhand WITH ERROR(), MESSAGE(), MESSAGE(1), PROGRAM( ),LINENO( ) && Trap OLE & other errors.

******************************************
* 說 明:錯誤處理程式
******************************************
PROCEDURE errhand
PARAMETER merror, mess, mess1, mprog, mlineno
CLEAR
IF merror=1426
mlineno=LTRIM(STR(LINENO()))
merror=LTRIM(STR(merror))
MESSAGEBOX("發生了一個OLE的錯誤,例如:呼叫的OLE程式重複開啟了檔案 "+CHR(13)+;
"Usually this is caused by quitting Word or canceling out of a dialog box in Word. "+CHR(13)+;
"錯誤訊息為:"+mess)
ELSE
mlineno=LTRIM(STR(LINENO()))
merror=LTRIM(STR(merror))
MESSAGEBOX("發生錯誤在程式第"+mlineno+"行"+CHR(13)+;
"錯誤訊息為:"+mess+" 錯誤代碼為"+merror)
ENDIF
ON ERROR
quit
RETURN
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作