因此,NTFS使用128位GUID来标识文件和目录,您可以轻松查看此信息:
C:\ Temp> C:\ Windows \ System32 \ fsutil.exe objectid query。 对象ID:ab3ffba83c67df118130e0cb4e9d4076 BirthVolume ID:ca38ec6abfe0ca4baa9b54a543fdd84f BirthObjectId ID:ab3ffba83c67df118130e0cb4e9d4076 域ID:00000000000000000000000000000000这很明显,但如何以编程方式检索此信息?查看OpenFileById(...)的WinApi,您应该能够获取此信息。人们希望在“Win32 FileID API Library”中完成此操作,然而该方法(GetFileInformationByHandleEx)返回一个FILE_ID_BOTH_DIR_INFO结构。该结构定义了一个FileId; 然而,它是一个LARGE_INTEGER(64位),而不是完整的128位标识符。
我猜可以使用WMI来实现这一点,那么我应该去哪里?