當應用程序正在運行時,我正在使用FileSystemWatcher來監視文件夾。但是,如果應用程序未運行時文件夾發生更改,如何在應用程序啓動時檢查這些更改?vb.net如何在應用程序啓動時檢查文件夾中的更改?
(類似於如何Windows媒體播放器,例如,監視你的音樂文件夾。即使你添加歌曲到時沒有運行該文件夾,它確實發現他們當它運行下一次)
感謝
當應用程序正在運行時,我正在使用FileSystemWatcher來監視文件夾。但是,如果應用程序未運行時文件夾發生更改,如何在應用程序啓動時檢查這些更改?vb.net如何在應用程序啓動時檢查文件夾中的更改?
(類似於如何Windows媒體播放器,例如,監視你的音樂文件夾。即使你添加歌曲到時沒有運行該文件夾,它確實發現他們當它運行下一次)
感謝
您可以存儲已在文件中找到的內容列表,然後在啓動時將其與當前狀態進行比較。
否則,您可以創建一個服務,該服務始於系統啓動並始終監視該文件夾,並在您的應用程序啓動時輪詢服務以查找自上次輪詢後發生的任何更改。
您可以使用System.IO.Directory或System.IO.DirectoryInfo中的LastWriteTime。
很好,非常感謝。我在想,如果我確實創建了一個服務,我應該在應用程序運行時和不運行時使用它(而不是有兩個功能)。我能從服務創建的日誌中獲得所需的所有信息嗎? – mazrabul 2010-05-26 15:31:11
唯一的問題是如果您的應用程序想要立即告訴您的更改,因爲如果應用程序沒有自己的監視器,則必須設置服務以將事件發送到應用程序(當應用程序正在運行時) 。不知道我是否理解你關於信息的問題? – 2010-05-26 17:02:35