这是场景:
某些应用程序读取文件的内容。通过打开它以共享阅读,然后关闭它(如我在Procmon.exe
中所见,请参阅image)来做到这一点。关闭文件后,我想运行自己的代码来编辑该文件。
到目前为止,我找到的唯一答案是在File.Open()
块中循环try
并在引发异常时触发一个事件,该事件不适用于共享读取访问,更不用说了多么丑陋。
有没有可以使用的软件包或自定义类?
编辑:应用程序未锁定文件。为了确保这一点,我尝试在应用程序启动之前运行File.OpenRead(); Thread.Sleep();
,并按预期加载了文件。但是它与File.OpenWrite()
一起崩溃了,因此我确信该应用程序没有放置任何锁。
编辑:尝试使用Restart Manager API实现编写一些测试程序,但似乎都没有捕获非锁定读取。