__int64 i64FreeBytes
unsigned __int64 lpFreeBytesAvailableToCaller,
lpTotalNumberOfBytes,
lpTotalNumberOfFreeBytes; // variables used to obtain
// the free space on the drive
GetDiskFreeSpaceEx (Manager.capDir,
(PULARGE_INTEGER)&lpFreeBytesAvailableToCaller,
(PULARGE_INTEGER)&lpTotalNumberOfBytes,
(PULARGE_INTEGER)&lpTotalNumberOfFreeBytes);
i64FreeBytes = lpTotalNumberOfFreeBytes;
_tprintf(_T ("Number of bytes free on the drive:%I64u \n"),
lpTotalNumberOfFreeBytes);
Windows CE コマンド ライン アプリケーションであるデータ管理ルーチンに取り組んでいます。上記のコードは、Manager.capdir フォルダー (ディレクトリのフル パス名を含む変数) を含む特定のドライブの空きバイト数を取得する方法を示しています。
私の質問は、上記のコード (_tprintf ステートメント) によって報告される空きバイト数が、ドライブの空きバイト数と一致しないことです (ドライブを右クリックして確認します)。
この違いの理由を知りたいですか?