有沒有辦法在文件的生命周期中唯一地標識文件(可能還有目錄),而不管移動,重命名和內容修改如何?(Windows 2000及更高版本)。制作文件副本應該為副本賦予其自己的唯一標識符。我的應用程序將各種元數據與單個文件相關聯。如果文件被修改,重命名或移動,則能夠自動檢測和更新文件關聯將很有用。FileSystemWatcher可以提供通知此類變化的事件,但是,如果許多文件系統事件迅速發生,它會使用可以輕松填充(并且丟失事件)的內存緩沖區。哈希沒有用,因為文件的內容可以更改,因此哈希也將更改。我曾考慮過使用文件創建日期,但是在某些情況下,它不是唯一的(即,當復制多個文件時)。我還聽說過NTFS中的文件SID(安全ID?),但是我不確定這是否可以滿足我的需求。有任何想法嗎?
3 回答

LEATH
TA貢獻1936條經驗 獲得超7個贊
如果調用GetFileInformationByHandle,則會在BY_HANDLE_FILE_INFORMATION.nFileIndexHigh / Low中獲得文件ID。該索引在卷中是唯一的,即使您移動文件(在卷中)或重命名文件,索引也保持不變。
如果可以假定使用了NTFS,則可能還需要考慮使用備用數據流來存儲元數據。
- 3 回答
- 0 關注
- 1086 瀏覽
添加回答
舉報
0/150
提交
取消