- ベストアンサー
WindowsXPはリムーバブルディスクの空き容量をどうやって取得しているのでしょうか?
WindowsXPが物理ドライブの空き容量を取得する時、どのような方法で取得しているのか教えてください。 FAT32フォーマットのリムーバブルディスク(SDカード)の空き容量を取得する時、ファイルシステムのFSINFOの空きクラスタ数から空き容量を算出していると思っていました。 ですが、SDのイメージを取りバイナリエディタで直接イメージのFSINFOの空きクラスタ数を書き換え、イメージをSDに戻して空き容量を見てみると正常な空き容量が表示されました。 Windowsではどのようにして空き容量を取得しているのでしょうか? ご存知の方がいらしたら教えていただけますか。 ちなみにこの状態で、SDカードにファイルを追加するとFSINFOの空きクラスタ数は正常な値に更新されます。 イメージのバックアップ、リストアに利用したソフトはSelfImageというソフトを利用させていただきました。 SelfImage http://www.forest.impress.co.jp/article/2007/04/11/selfimage.html また、セクタ情報の表示には低空飛行というものを利用させていただきました。 http://www.vector.co.jp/soft/dl/win95/hardware/se072470.html
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
FATエントリ全部見てるとか推測は出来てもソースコードがない以上どうやってかなんてわかりはしませんよ 入手にはNDA署名が必要ですから知ってる人がいてもここに書かれることはないでしょう
その他の回答 (1)
GetDiskFreeSpace http://msdn.microsoft.com/ja-jp/library/cc429305.aspx GetDiskFreeSpaceEx http://msdn.microsoft.com/ja-jp/library/cc429308.aspx ではないでしょうか。 一発で取得できます。
お礼
早速の回答ありがとうございます。 こういうAPIもあるのですね。 参考になりました、ありがとうございます。
お礼
回答ありがとうございます。 ソースコードないとわからないですか・・・。 NDAに触れる内容でしたらこれで回答を締め切ったほうがよさそうですね。 貴重なご意見ありがとうございました。