Wie liest du die 128-Bit-NTFS-FILE_ID für ein Verzeichnis und / oder eine Datei?

So verwendet NTFS eine 128-Bit-Guid, um Dateien und Verzeichnisse zu identifizieren. Sie können diese Informationen leicht genug anzeigen:

C:\Temp>C:\Windows\System32\fsutil.exe objectid query .
Object ID :        ab3ffba83c67df118130e0cb4e9d4076
BirthVolume ID :   ca38ec6abfe0ca4baa9b54a543fdd84f
BirthObjectId ID : ab3ffba83c67df118130e0cb4e9d4076
Domain ID :        00000000000000000000000000000000

So ist das offensichtlich genug, aber wie ruft man diese Informationen programmgesteuert ab? Wenn Sie sich WinApi für OpenFileById (...) ansehen, sollten Sie in der Lage sein, diese Informationen abzurufen. Man würde erwarten, dass dies im " Win32 FileID API Library ", aber die Methode dort GetFileInformationByHandleEx) gibt ein @ zurü FILE_ID_BOTH_DIR_INFO Struktur. Diese Struktur definiert eine FileId. Es ist jedoch ein LARGE_INTEGER (64-Bit) und nicht der vollständige 128-Bit-Bezeichner.

Ich vermute, man könnte WMI dafür verwenden, sollte ich mich da wenden?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage