我想检查C:\ Data.xlsb是否已经打开。有没有一种方法可以检查文件是否已经打开?
我有下面的代码从这里How to tell if a certain Excel file is open using VB.NET?
Public Shared Function OpenUnlockedFile(ByVal path As String) As StreamWriter
Dim sw As StreamWriter = nothing
Try
sw = New StreamWriter(path)
Catch ex As IOException When System.Runtime.InteropServices.Marshal.GetLastWin32Error() = 32
REM locked, return nothing
End Try
Return sw
End Function
但我不知道如何使用上面的代码。
我更喜欢sub而不是功能。
此致敬礼。
你为什么喜欢Sub over Function?如果你想检查文件是否被打开,函数会更好,因为你可以使它返回True或False,因此你可以在'If'语句中检查它。 –
我建议你将返回类型修改为'Boolean',并在函数的最后一行返回'True',并在'Catch'块中返回False。我也认为'FileStream'会比'StreamWriter'更好。 –
@VisualVincent您可以发布您建议的代码吗? – Markowitz