2013-07-04 49 views
2

我看到這些問題開了,我不問同樣的問題:
Is there a way to check if a file is in use?

How to check if file is in use in c#?C#如何檢測如果文件是在另一個進程

我要問的問題,如何檢測文件是否在另一個進程中打開。這是其他人問的同一個問題,但他們得到的答案告訴他們看看他們是否可以獨佔鎖定文件,以暗示文件在另一個進程中被打開。我不希望對文件進行獨佔鎖定,因爲我不想幹擾其他進程的操作。

而且,不同的操作系統可能會表現不同 - 有的操作系​​統可能支持之類的文件系統級或塊級快照或卷影副本,這可能會允許你在一個文件中獲取排它鎖,即使其他一些過程有該文件打開閱讀。

其他問題中的一個人說你可以測試系統中所有打開的文件句柄。這是唯一的方法嗎?如果是這樣,那麼在C#中如何去做呢?我沒有看到任何明顯的本地.Net類來瀏覽系統中所有打開的文件句柄。

+1

信息看一看這個 [http://stackoverflow.com/questions/860656/using -c-how-do-one-figure-out-what-process-locked-a-file] [1] [1]:ht tp://stackoverflow.com/questions/860656/using-c-how-does-one-figure-out-what-process-locked-a-file – Alyafey

回答

相關問題