21 #define NRH_FILE_TYPE 0x454C4946 22 #define ATTRIBUTE_TYPE_DATA 0x80 23 #define ATTRIBUTE_TYPE_END 0xFFFFFFFF 134 _tprintf(
_T(
"Volume size\t\t: %I64u MB\n"), VolumeSize >> 20);
140 _tprintf(
_T(
"\nAllocation Size\n---------------\n"));
146 _tprintf(
_T(
"\nMFT Information\n---------------\n"));
147 _tprintf(
_T(
"MFT size\t\t: %I64u MB (%I64u%% of drive)\n"),
VolumeInfo.MftValidDataLength.QuadPart >> 20, (
VolumeInfo.MftValidDataLength.QuadPart * 100) / VolumeSize);
151 _tprintf(
_T(
"MFT zone size\t\t: %I64u MB (%I64u%% of drive)\n"), (MftClusters *
VolumeInfo.BytesPerCluster) >> 20, (MftClusters * 100) /
VolumeInfo.TotalClusters.QuadPart);
154 _tprintf(
_T(
"\nMeta-Data files\n---------------\n"));
#define ATTRIBUTE_TYPE_END
struct _FILE_RECORD_HEADER * PFILE_RECORD_HEADER
_In_ ULONG _In_ ULONG _In_ ULONG Length
#define INVALID_HANDLE_VALUE
IN PVOID IN PVOID IN USHORT IN USHORT Size
DWORD WINAPI GetLastError(VOID)
int __cdecl _tmain(int argc, const TCHAR *argv[])
#define ATTRIBUTE_TYPE_DATA
static TCHAR * MetaDataFiles[]
_Must_inspect_result_ _In_ PFILE_OBJECT _In_ ULONG _In_ FILE_INFORMATION_CLASS _Out_opt_ PULONG LengthReturned
_Reserved_ PVOID Reserved
#define FSCTL_GET_NTFS_VOLUME_DATA
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR OutputBuffer
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR InputBuffer
_Must_inspect_result_ _In_ ULONG Flags
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
struct NTFS_RECORD_HEADER * PNTFS_RECORD_HEADER
_Must_inspect_result_ _Out_ PHANDLE VolumeHandle
#define FSCTL_GET_NTFS_FILE_RECORD
struct _FILE_RECORD_HEADER FILE_RECORD_HEADER
BOOL WINAPI DeviceIoControl(IN HANDLE hDevice, IN DWORD dwIoControlCode, IN LPVOID lpInBuffer OPTIONAL, IN DWORD nInBufferSize OPTIONAL, OUT LPVOID lpOutBuffer OPTIONAL, IN DWORD nOutBufferSize OPTIONAL, OUT LPDWORD lpBytesReturned OPTIONAL, IN LPOVERLAPPED lpOverlapped OPTIONAL)
struct NTFS_ATTR_RECORD * PNTFS_ATTR_RECORD
struct NTFS_ATTR_RECORD::@163::@165 Resident
IN OUT PVCB OUT PDIRENT OUT PBCB IN BOOLEAN CreateFile
_Must_inspect_result_ _Inout_opt_ PUNICODE_STRING VolumeName
struct NTFS_ATTR_RECORD::@163::@166 NonResident
_Must_inspect_result_ _In_ WDFDEVICE _In_ BOOLEAN _In_opt_ PVOID _In_ LONG _In_z_ PCHAR File
#define HeapFree(x, y, z)
_In_ NDIS_STATUS _In_ ULONG _In_ USHORT _In_opt_ PVOID _In_ ULONG DataSize
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG ValueLength