2016-01-21 54 views
-1

閱讀使用記事本等程序,而該文件正被另一個程序寫入到一個文件?當文件正在被其他程序寫入時,使用記事本等程序讀取文件?

我創建了一個Windows服務應用程序連續記錄。

我要檢查服務的當前事件而不將其關閉。要做到這一點,我打開Notepadlog.txt,但得到的消息

,因爲它正由另一個 過程

我怎樣才能讀取日誌文件,而不關閉該進程無法訪問該文件服務?服務關閉後,我可以隨時檢查文件中的每個日誌條目。

該文件正在通過致電fopen_sfprintf寫入,如果這應該是任何利益。另外,該服務在C/C++編程上Windows 10 64-bit,採用默認權限的即LocalSystemSCM下運行。

+0

我總是使用記事本++(從某處免費下載,谷歌搜索)。它可以打開日誌文件,而那些仍然被寫入(它比記事本中的幾個其他的方式更好。 – JSF

+0

在這種情況下,它便無法打開文件,:-) – Shuzheng

回答

2

https://msdn.microsoft.com/en-us/library/z5hh6ee9.aspx然後備註:

由fopen_s打開_wfopen_s是不可共享

文件。如果您需要可共享文件,請使用具有適當共享模式常量的_fsopen,_wfsopen(例如,用於讀/寫共享的_SH_DENYNO)。

那會是一個解決辦法?

+0

閱讀其內容我想是這樣,我會嘗試一下。我不明白爲什麼我的問題是低估的。 – Shuzheng

相關問題