VBScript を起動する際に //X オプションを与えることで、デバッガを起動させることができ、その際 Visual Studio をデバッガとして選べば、 ステップ実行したり、変数の値が見えたりしてすごく便利なのですが、毎回 Visual Studio の新しいプロセスを起動せねばならず、 遅いマシンでは時間がかかりすぎるため、何か方法はないかとネットで探し、見つけた方法を試してみました。
元記事は Blogs By Kresten: VBScript Projects in Visual Studio です。
Visual C++ の メイクファイルプロジェクトを流用して、VBScript 用のプロジェクトを作成しています。
以下では、Visual Studio 2008 Professional を使っています (※1)。
※1 Visual Studio のエディションによっては (Express など) VBScript のデバッガを内蔵していない、という話もあるようなのですが、確認していません。
Visual Studio を起動し、メニューから [新規作成] - [プロジェクト] を選び、[新しいプロジェクト] ダイアログで、[プロジェクトの種類] に [Visual C++]、
[テンプレート] で [メイクファイル プロジェクト] を選びます。[プロジェクト名] を入力し、[OK] をクリックします。
ここでは、プロジェクト名を「VBSTest」としました。
そのまま [完了] をクリックします。
ソリューションエクスプローラに表示される、[ソースファイル]、[ヘッダーファイル]、[リソースファイル]、[readme.txt] は不要なので、削除します。
削除するには、選択したうえで、[Delete] キーを押します。
※削除後、「readme.txt」のファイル本体が残る場合は、エクスプローラでプロジェクトのフォルダを開き、削除してください。
削除の警告メッセージボックスが表示されるので、[OK] をクリックします。
エクスプローラでプロジェクトのフォルダを開き、空の VBS ファイルを作成します。ここでは、「VBSTest.vbs」としました。
作成したファイルをプロジェクトに追加します。プロジェクトを右クリックして、[追加] - [既存の項目] を選び、 表示される [既存項目の追加] ダイアログで、「VBSTest.vbs」を選択し、[追加] をクリックします。
プロジェクトのプロパティを設定します。
プロジェクトを右クリックして、表示されるメニューから [プロパティ] を選びます。
[構成プロパティ] - [全般] で [構成の種類] を [ユーティリティ] に変更し、[適用] をクリックします。
同じく、[構成プロパティ] - [デバッグ] で [コマンド] に「wscript.exe」、[コマンド引数] に「VBSTest.vbs //X」と入力し、 [適用] をクリックします。
VBSTest.vbs を開き、適当にコードを入力します。
ここでは、メッセージボックスを表示するコードを追加しました。
実行します。ただし、通常、デバッグ実行する際には「デバッグ開始 (F5)」を使うのですが、
ここでは、「デバッグなしで開始 (Ctrl + F5)」で実行します。
デバッガの選択画面が表示されるので、現在開いているプロジェクト「VBSTest」を選択し、[はい] をクリックします。
スクリプトの先頭でデバッグ実行のステップが一時停止します。
後は、通常のデバッグと同じです。ブレークポイントを設定したり、変数の中身を参照したり、ステップ実行したりしてデバッグを行えます。
有益な情報を提供されている Blogs By Kresten: VBScript Projects in Visual Studio に深謝いたします。