我正在读取一个由第 3 方程序定期写入的文件。 我正在使用以下 FileStream 阅读:
using (FileStream fs = new FileStream(
FullPath,
FileMode.Open,
FileAccess.Read,
FileShare.ReadWrite))
然而,第 3 方程序正在写入文件,但使用的是 FileShare.None
因此,当第 3 方程序尝试以独占访问权限打开文件但失败时,我偶尔会打开文件进行阅读。
如何读取此文件而不会对第 3 方程序造成问题? 我不介意释放我的阅读优先权给另一个应用程序。有什么办法吗?
最佳答案
您想要做的是监视进程创建通知,当您看到特定进程出现时,您会想避开它。
IWbemServices::ExecNotificationQuery
以下是关于 MSDN 的一些额外详细信息. 这里还有一个代码项目:Process Information and Notifications using WMI
关于c# - 读取文件而不会在第 3 方程序上导致 IOException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18059547/