我正在研究隱藏文件的程序。我用的是如何阻止隱藏的系統文件被看到?
File.SetAttributes()
命令來設置文件屬性爲隱藏和系統。但由於顯示隱藏的文件,文件夾和驅動器選項已設置,因此仍然可以看到它們。
是否可以使用C#設置和取消隱藏受保護的操作系統文件(推薦)選項?
我手動和隱藏和系統屬性設置的文件無法看到。
我正在研究隱藏文件的程序。我用的是如何阻止隱藏的系統文件被看到?
File.SetAttributes()
命令來設置文件屬性爲隱藏和系統。但由於顯示隱藏的文件,文件夾和驅動器選項已設置,因此仍然可以看到它們。
是否可以使用C#設置和取消隱藏受保護的操作系統文件(推薦)選項?
我手動和隱藏和系統屬性設置的文件無法看到。
即使您想出如何做到這一點,您的方法也有幾個問題。例如:
dir
或ls
命令和將顯示隱藏的文件你要做的是與rootkit /惡意軟件的界限。 rootkit的做法是通過運行微過濾器文件系統驅動程序。驅動程序接收到特定的IO調用,並且只要向「隱藏」文件發出IO請求,就會返回「找不到」結果。驅動程序通常會允許來自特定進程(通過pid或證書標識)的調用,以允許讀取/寫入和其他IO操作。另外,根據您嘗試實現的內容,您可以嘗試使用容器類文件(請參閱TrueCrypt或其衍生物)或以編程方式加密文件。
我建議你利用微軟的NTFS或AD,.NET框架或API來管理這個。正如最初的答案所提到的,如果文件試圖隱藏,它們是其他可能的方法來顯示文件。
考慮使用,
File.SetAttributes(path, FileAttributes.Hidden);
來源答案從另一個答案:當一個人把它再重新應該發生How to hide file in C#?
什麼。 –
「第3法則:如果一個壞人有無限制的物理訪問權限,那不再是你的電腦了。」 - 您的用戶無限制地訪問他的電腦,因此您的C#應用程序無法控制它。 –
您可能需要考慮在C#中運行PowerShell腳本。或者,如果這是您的程序正在執行的唯一任務,則僅使用PowerShell。 – coinbird