如何确定foxpro的独家开放是否会成功?

时间:2009-04-16 18:19:00

标签: foxpro

如果我尝试在FoxPro中打开一个独占表,如果访问被拒绝,它会生成一个对话框。由于我的目标是非交互式应用程序,有没有办法检测操作是否会成功,或者至少让它无声地失败?

3 个答案:

答案 0 :(得分:2)

如果你有VFP 8或更高版本:

TRY
    USE MyTable IN 0 EXCLUSIVE
ENDTRY
...
IF USED ("MyTable")
    *-- Use the table here
ENDIF

答案 1 :(得分:1)

对于旧版本:

cOldError = ON("ERROR")
ON ERROR *
USE MyTable IN 0 EXCLUSIVE
lSuccess = used("MyTable")
ON ERROR &cOldError

if lSuccess ...

答案 2 :(得分:0)

我使用FOPEN成功了......

nFHdl = FOPEN("myfile.dbf", 1)  &&  1 tries to open the file for writing
IF nFHdl > 0 THEN
   FCLOSE(nFHdl)
   USE myfile.dbf exclusive
ELSE
   = messagebox("Can't open Exclusive")
ENDIF