- ベストアンサー
インストーラの作成について
お世話になります。 Visual Basic .Net 2003を使用して Windows インストーラを作成しています。 インストーラの途中で、ディスク容量を事前にチェックし 容量が少ない場合はインストール処理を中止するような機能を実装するにはどうしたらいいのでしょうか? ご存知の方がいらっしゃいましたら ご教授いただけますようお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
ディスク容量をチェックするには ファイルシステムオブジェクトを使うと便利です。 dim objFs, objDrive, objDrives, x Set objFs = CreateObject("Scripting.FileSystemObject") Set objDrives = objFs.Drives For each x in objDrives Set objDrive = objFs.GetDrive(x) if objDrive.IsReady then MsgBox x & "is " & objDrive.FreeSpace & "Bytes" end if next のようにして、空き容量を調べることができます。 中止するのは、 空き容量が、予定している分より少ない場合は、単にアプリケーションを終了すればいいですよね。
その他の回答 (1)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
すみません、インストーラープログラムを自作されているのだと思っていました。 ボケてましたね。 プロジェクトで「Windows インストーラ」を作成する場合、インストールする場所とか容量の確認というのは、セットアッププログラム上で、ユーザーが確認できる(中止もできる)ので、必要ないような気がします。 事前にということであれば、 setup.exeを実行する前に、setup.exeを起動するような、ダイアログアプリケーションみたいなものを作成してそこで、#1の様な方法で調べるのはどうでしょう? イメージとしては、CDを入れるとどのソフトをセットアップするのか選ぶプログラムが起動するセットアップメニュープログラムみたいなイメージですが。 またもや、的をはずしていたらすみません。
お礼
お礼が大変遅くなり申し訳ありませんでした。 結局、WindowsInstaller形式でインストーラを作成することは諦め VBで自作することになりました。 せっかく、ご回答をいただいたのにお礼が遅くなったことをお詫びさせていただきます。 申し訳ありませんでした。
お礼
ご回答ありがとうございます。 お礼が遅くなり申し訳ありません。 質問に記載した内容が不足していたのですが、 Windowsインストーラを使用したインストールの過程で ディスク残量判定ロジックの組み込む手順についても ご教授いただければと思います。 申し訳ありませんが、よろしくお願いいたします。