HDDの空き容量を取得するにはどうすればいいのでしょうか。
ヘルプを見たところDriveオブジェクトを使えばよさそうなのですが
Dim D As Drive()
とすると,「型"Drive"が宣言されていません」のエラーが出るのですが
どうすれば宣言できるのでしょうか。
すいません環境を書き忘れました
VB.NET
WinXP Home Edition
NETで出来るかわかりませんがVB6なら
GetDiskFreeSpaceと言うAPI取得できますよ。
ここに既に情報が掲載されていました。
http://dobon.net/vb/dotnet/system/freespace.html
ご参考までに・・・
以上。
Driveオブジェクトを使うならMicrosoft Scripting Runtimeを参照設定する必要がありますし、FileSystemObjectを生成する必要があります(といっても私の知識はVB6ですが)
Dim objFso As FileSystemObject
Dim objDrive As Drive
Set objDrive = objFso.GetDrive("C:\")
あとはobjDriveを使用するだけです
FileSystemObject だと、COM Interop を介さなくては
いけなかったりするので、VB6とは宣言が異なります。
(といっても、基本的な使い方は一緒なのですけれどね)
.NETで行うなら、岡田 之仁さんの回答にあったURLにも
ありますように、WMIにてWin32_LogicalDisk.FreeSpace で
判定した方が良いかと思います。
# あるいは、GetDiskFreeSpace(Ex)を呼び出すという手もありますけれどね。
コマンドプロンプトからDIRコマンド実行して、出力を受け取って、
そん中から「個のディレクトリ」って文字列見っけたら、そん次にあるべ?
桁区切りが不要なら /-c つければ○。
こんなのヘボいかなぁ〜?
ツイート | ![]() |