台灣最具影響力的-資訊專家社群 - 讓您成為最有價值的IT專業人才
線上人數
1011
 
會員總數:230767
接案會員:6775
文章總數:2320
討論主題:176605
歡迎您免費加入會員
討論區列表 >> C# >> 請問如何知道一個指定的檔案被複製或搬走了??

[變換順序]
[我要回覆]
1


回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
請問如何知道一個指定的檔案被複製或搬走了??
價值 : 30 QP  點閱數:2286 回應數:4

點圖分享到Plurk吧!
樓主

coll
門外漢
0 9
192 7
發送站內信

想請問~
如果已經記錄檔案的位置了..
例如 C:\AA\BB\CC.txt
怎麼可以即時知道這個檔案被複製到某處..
或是BB資料夾、CC.txt檔案被搬走到某處呢??

在指定的路徑下(目錄或檔案)
fileWatcher可以監看onChange、onCreat、onRename、onDelete..

現在遇到的問題是,如果使用者把檔案或是資料夾搬走..就監看不到了..
另外,也不能監看到已經被複製的檔案..

該從何著手呢??

謝謝



本篇文章發表於2006-10-14 02:04
什麼是iT Power資訊報 2010年藍色小舖認證專家風雲榜完全名單
4樓
恩恩恩~~HUWK 還是利害的啦!!
你可以試試看喔!!!
我好笨喔!!



本篇文章回覆於2006-11-27 16:39
--未登入的會員無法查看對方簽名檔--
3樓
回應

huwk
捐贈 VP 給 huwk 檢舉此回應
想到一個最笨的方法..可以解決部份你的問題,若只是想要記錄某個檔案是否被複制成了其它檔名~

那就是你開二個FileSystemWatcher,一個有指定filter成你要的監看檔名(做你原來監控的事項)
另一個不指定filter,當這個FileSystemWatcher發現在檔案被create時,使用fileinfo與原檔案做大小等等的比對,若是相同,那就做對應的記錄!

若你在記錄的同時,也可以再建立另一個FileSystemWatcher去監看這個檔案.不過我覺得這樣子是沒完沒了的!若配合其它控管機制,應是比較好的方式,要不然現在usb那麼方便,放一個usb把檔案copy走,或許你也沒管制到才對!


本篇文章回覆於2006-10-17 21:38
--未登入的會員無法查看對方簽名檔--
2樓
回應

孤雁單飛
捐贈 VP 給 孤雁單飛 檢舉此回應
被搬走是可以檢測到...但是檢核檔案是否被複製過就不行了...


本篇文章回覆於2006-10-17 20:03
--未登入的會員無法查看對方簽名檔--
1樓
要是被搬走了
那麼你的執行程式就裡當不應搜尋了
那你又自行寫一段迴值
當被搬走時馬上回覆紀錄檔
或許這樣子就不怕了阿
是是看吧


本篇文章回覆於2006-10-14 09:22
--未登入的會員無法查看對方簽名檔--
[變換順序]
1
 

回覆
如要回應,請先登入.