RB *_*son 3 windows file kill .net-3.5
在.Net 3.5中,我有以下代码.
If File.Exists(sFilePath & IndexFileName & ".NX") Then
Kill(sFilePath & IndexFileName & ".NX")
End If
Run Code Online (Sandbox Code Playgroud)
在运行时,在一个客户端的机器上,当执行此代码时,我会一遍又一遍地得到以下异常
Source: Microsoft.VisualBasic
TargetSite: Microsoft.VisualBasic.FileSystem.Kill
Message: No files found matching 'I:\RPG\HGIAPVXD.NX'.
StackTrace:
at Microsoft.VisualBasic.FileSystem.Kill(String PathName)
(More trace that identifies the exact line of code.)
Run Code Online (Sandbox Code Playgroud)
运行此代码的不同计算机上有两个人,但只有一个人获得了异常.例外不会每次都发生,但它会定期发生.(每小时多次.)代码不在循环中,也不是连续运行,更像每隔几分钟一次.
从表面上看,这看起来像一个竞争条件,但考虑到这个代码的运行频率以及错误发生的频率,我认为必定会有其他事情发生.
我很感激有关如何追踪这里真正发生的事情的任何建议.保持错误发生的解决方案会更好.
我想要问的第一个问题是"文件真的存在吗?" 如果是这样,它是否具有任何特定属性(是只读还是隐藏,还是系统---还是目录)?
请注意,Microsoft.VisualBasic.FileSystem.Kill专门查找并静默跳过标记为"系统"或"隐藏"的任何文件.对于几乎任何其他问题,你会得到一个不同的例外.