• ベストアンサー

VBでディスクの空き容量を調べたい。

VBでファイルをコピーするプログラムを作りたいのですが、コピー先の空き容量をチェックしてから、コピーする様にしたいと考えています。 コマンドで取得する方法が見つからない(見つけられない)のですが、ユーザー関数を作ってチェックすべきでしょうか? それはどのようにすればよろしいでしょうか? 現在コーディング中でかなり困っています。 申し訳ないのですが、宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • bugmaru
  • ベストアンサー率38% (76/195)
回答No.1

Win32 APIのGetDiskFreeSpace()関数を使えば情報はとれます。 VBからWin32APIのコールの仕方は市販の書籍やMSDNライブラリで情報収集してから呼び出したほうがいいと思います。

参考URL:
http://support.microsoft.com/default.aspx?scid=kb;ja;JP231497
全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.2

GetDiskFreeSpaceEx() という API があるので、それを使えばよいでしょう。 サンプルプログラムを載せているページを参考URL に。

参考URL:
http://ww3.enjoy.ne.jp/~kazu.ohara/SampleCode.html
全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • VBでキーボードを使わずに"Ctrl+A"をしたい!

    初歩的な質問で申し訳ないのですが、VBでキーボードを使わずに、何かコマンドボタンを押した時に"Ctrl+A"などを実行したいです。VBでコーディングしていけば同じような機能は実現できるのですが、もっと簡単な方法があるような気がしてなりません・・。このボタンを押したら"Ctrl+A"を実行する、みたいなコーディングはどのようにすれば実現できるのでしょうか?

  • 何もしてないのにディスクの空き容量が減ります。

    何もしてないのにディスクの空き容量が減ります。 あるファイルをダウンロードしようとすると「空き容量が足りません」と表示されたので古いファイルや使ってないプログラムを削除しました。そのときはそれで済んだのですが、その後何もダウンロードしてないのに、「空き容量が少なくなっています」とか「空き容量が足りません」と表示されます。その度にファイルやプログラムを削除しているのですが、しばらくすると上記のメッセージが表示されます。ファイルやプログラムを消す以外に空き容量を増やす方法はありますか?また根本的な解決策はあるでしょうか。

  • ディスクの空き容量を取得するシステム関数はありますか?

    ディスクの空き容量を取得するシステム関数はありますか? dfコマンドで、ディスクの空き容量を取得できますが、 このdfコマンドに相当するシステム関数はありますでしょうか? やりたいことは、例えば、/etc/varのディレクトリの空き容量がどれくらいあるかを取得したい ということです。 dfコマンドにより上記は、実現出来ますが、直接C言語から呼び出すことが可能なシステム関数があれば と思い質問しました。 上記に該当するシステム関数がない場合はsystem関数を使用してdfを実行する予定ですが、それは最後の手段と考えています。 OSはintel版solarisで使用する予定ですが、linux前提でもかまいません。

  • コピー後の空き容量を調べたい

    コピー後のディスクの空き容量をコピー前に調べられるソフトをVB2005において開発しています。 コピー後の空き容量を調べるには、クラスタサイズを取得しなければなら ない?と思い、Win32APIを調べてみたところ「GetDiskFreeSpace」というAPIを利用すると取得できそうでした。 が、よく調べてみると2GBより大きいボリュームに対してはつかえないことがわかり、現在ここで足踏みしております。 恐れ入りますが、FT32,NTFSフォーマットのコピー後の空き容量の求め方をご教示願えないでしょうか。 よろしくお願いします。

  • VBプログラムのコーディング数のチェックツール

    VBで開発したプログラムのコーディング数をチェックできるツールなどご存知でしたら教えてください。フリーソフトでお願いします。 VBのコーディング数ってあんまり意味ないですよね。プログラムの規模を測りたいということなのですが、これまでは、画面数・帳票数・難易度という表現で行ってきましたし。どうしてもコーディング数がいいらしいので・・・

  • VB.NET経験者のVB6.0使用感について。

    こんばんは。 VB.NET経験1年程度の学生ですが、今度VB6.0を使ってプログラムを作ることになりました。 私はVB6.0は未経験なのですが、使用感はかなり違うのでしょうか?変数の宣言の方法や存在しない関数など初歩的な部分でありましたら教えてください。 またVB.NETであるコマンドの補完機能はVB6.0でもありますよね? よろしくお願いします。

  • VB6の習得について

    現在、小さな会社で研究開発の仕事をしています。 これまでプログラミングの経験はないのですが業務の必要上、 既存のプログラム(VB6、約6000行)を修正、場合によっては 一から書き直すように指示がありました。これにあたって上司のスタンスですが、 ・たとえ初心者だとしても、「練習のためのコーディング」は業務時間には認めない  何らかの形で製品に反映されるコーディングのみを認める ・今後のメンテナンスのことも考えると、VBの6以降のバージョンは使ってはいけない  VB6の範囲で完結させるように ・そもそもコーディングとは好きな人、向いている人が、人から言われなくても  書くものだ、だから自宅で練習やコーディングをするのが当然だ ・お前ができないなら、外注に出す(今の私は契約社員なので、立場はかなり悪くなります) ある程度なら、自腹で開発環境を自宅におこうかとも思ったのですが、最新のVBならともかく VB6は私の知る限り、正規の方法でインストールは難しいようです。(できたとしても非常に高額) VB6を含めてVBをある程度マスターしたいという気持ちはあるのですが、今の状況で どのような手段がベストでしょうか? また、VB6でコーディングしたテキストと最新のVBとの互換性などはどのような関係にあるのでしょうか? ご教示のほど、よろしくお願いします。

  • VBでアップロード

    VBでファイルをアップロードするコーディングをしたいのですが、その際ヤフーのジオシティーズとかにアップロードしたりもできますでしょうか? もしできるのなら、その方法を教えてください!

  • ドライブの空き容量の取得

    よろしくお願いします。 DOSコマンドのバッチを作成しています。 1MB程度のCSVファイルを、Windows2003サーバの Eドライブにmoveコマンドで配置したいと思います。 そこで配置前に、Eドライブの空き容量を取得し、 CSVファイルとの容量の比較をしたいと思います。 (事前チェックのようなものです) DOSコマンドで、このような容量の比較は可能でしょうか?。 簡単なサンプルを頂けますと助かります。

  • VB6で呼び出し元の情報を取得する方法について

    Win XP VB6 SP5 VB6で呼び出し元の情報を取得する方法について VB6で ・呼び出し元の関数本体が宣言されているソースのファイル名 ・呼び出し元の関数名 を取得する方法はありますでしょうか? システムログを生成する時に利用しようかと考えています。