vb判断文件是否被其他程序占用

 我来答
涐吢铱舊囿儚
2013-12-10 · TA获得超过488个赞
知道小有建树答主
回答量:512
采纳率:100%
帮助的人:580万
展开全部

楼主试下这个代码:

Private Function FileAccTest(FileName As String) As Boolean
   Dim iFn As Integer
   Dim RetVal As Boolean
   On Error GoTo E_HandleFA
   RetVal = False
   If (Len(Dir$(FileName, 7)) > 0) Then
      iFn = FreeFile
      Open FileName For Binary Lock Read Write As #iFn
      Close iFn
   End If
   RetVal = True
E_HandleFA:
   FileAccTest = RetVal
End Function

' 应用示例:
Private Sub cmdTest_Click()
   Dim sFile As String
   
   sFile = "x:\temp\01.exe"
   If (FileAccTest(sFile)) Then
      MsgBox sFile & "没有被占用。", vbInformation
   Else
      MsgBox sFile & "已经被占用。", vbInformation
   End If
End Sub
du笨鸟
高粉答主

2015-11-14 · 关注我不会让你失望
知道大有可为答主
回答量:2.3万
采纳率:96%
帮助的人:3154万
展开全部
可以使用Open 语句的不同用法来做到文件的输出与输入。

示例:下列代码以顺序输入模式打开 TESTFILE 文件。

Open "TESTFILE" For Input As #1
' 若要以其他方式打开文件,必需先关闭此文件。
Close #1

下列代码以只允许写操作的二进制方式打开文件。

Open "TESTFILE" For Binary Access Write As #1
' 若要以其他方式打开文件,必需先关闭此文件。
Close #1

下列代码以随机方式打开文件,文件中含有用户自定义数据类型 Record 的记录。

Type Record ' 定义用户自定义数据类型。
ID As Integer
Name As String * 20
End Type

Dim MyRecord As Record ' 声明变量。
Open "TESTFILE" For Random As #1 Len = Len(MyRecord)
' 若要以其他方式打开文件,必需先关闭此文件。
Close #1

下列代码以顺序输出方式打开文件;任何过程都可以读写该文件。

Open "TESTFILE" For Output Shared As #1
' 若要以其他方式打开文件,必需先关闭此文件。
Close #1

下列代码以只允许读的二进制方式打开文件;其他过程不可以读该文件。

Open "TESTFILE" For Binary Access Read Lock Read As #1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
EnjoyCallen
2013-12-10
知道答主
回答量:61
采纳率:0%
帮助的人:11.9万
展开全部
我是初学者,不知你是哪个版本的VB?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式