🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: japan.comp.lang.visual-c++
Article #52

[Q]2GB以上のディスクのクラスタサイズ取得方法

#52
From: Dairyo Gokan
Date: Sun, 28 May 2000 00:00
31 lines
2616 bytes
 『GetDriveSpace()では、2GB以上のディスク容量を正しく取得できない
ので、Windows 95(OSR2)以降では、GetDriveSpaceEx()を使うように』と
いう記述は、MSDNのヘルプをはじめ、わりとよく目にします。

 しかし、GetDriveSpaceEx()では ...

クラスタ当たりのセクタ数
セクタ当たりのバイト数
ディスク上の空きクラスタの総数
ディスク上のクラスタの総数

等の情報が取得できません。 このうち後者の2つは、前者の2つが取得でき
れば、クラスタ容量が判るので、GetDriveSpaceEx()が返す「ディスクの総
容量」と「ディスクの空き容量」から計算で求められます。

 DOSプロンプト(Windows 98)のCHKDSKコマンドでは、2GB以上のディスクに
ついても「セクタ当たりのバイト数」や「クラスタ当たりのセクタ数」が
表示されるので、何らかの方法でプログラムから取得することは可能なよう
ですが、ヘルプを捜してみてもそれらしきAPIが見つかりません。

 はたして、どのようなAPIまたは方法で取得できるのでしょうか?

 あと、Windows 95/98系と、Windows NT/2000系(FAT/NTFS)で、処理に違い
があると思うのですが、どうでしょうか?

+---------------------------------------------------------------------+
| From : Dairyo Gokan ( 後神 大陵 )                                   |
| Org. : Hitmark Computer Corporation ( ヒットマークコンピュータ )    |
| Adrs : 13256 Northup Way Suite 3, Bellevue WA 98005                 |
| TEL:425-649-8808  FAX:425-649-9001  mailto:nand@can.bekkoame.ne.jp  |
+---------------------------------------------------------------------+
Technical Details
Message-ID: <39318C51.B3318E65@can.bekkoame.ne.jp>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Language: Japanese,JIS
X-Google-Thread: 110a07,f3b4c6dc95fdab7,start
X-Google-Attributes: gid110a07,public
X-Google-Thread: 10a2c7,f3b4c6dc95fdab7,start
X-Google-Attributes: gid10a2c7,public
From: Dairyo Gokan <nand@can.bekkoame.ne.jp>
Subject: [Q]2GB以上のディスクのクラスタサイズ取得方法
Date: 2000/05/28
Message-ID: <39318C51.B3318E65@can.bekkoame.ne.jp>
X-Deja-AN: 628379592
Content-Transfer-Encoding: 7bit
X-Original-NNTP-Posting-Host: 208.8.213.10
X-Accept-Language: ja
Content-Type: text/plain; charset=iso-2022-jp
X-Complaints-To: abuse@verio.net
X-Trace: sea-read.news.verio.net 959549060 208.8.213.10 (Sun, 28 May 2000 21:24:20 GMT)
X-Authenticated-User: gori
Organization: Hitmark Computer Corporation
MIME-Version: 1.0
NNTP-Posting-Date: Sun, 28 May 2000 21:24:20 GMT
Newsgroups: japan.comp.lang.visual-c++,fj.os.ms-windows.programming