Microsoft Windows スクリプト ホストは、基本オペレーティング システム内でスクリプトを実行するために使用できるスクリプト ユーティリティです。 Windows スクリプト ホストを使用すると、一般的なタスクを自動化したり、強力なマクロやログオン スクリプトを作成したりできます。 Windows スクリプト ホストには、VBScript および JScript ActiveX スクリプト エンジンが付属しています。 他のソフトウェア会社では、PerlScript、PScript、Python などの言語用に ActiveX スクリプト エンジンを提供しています。
Windows スクリプト ホストによって実行されるスクリプトで COM オブジェクトを使用するには、まずオブジェクトのインスタンスを作成する必要があります。 COM オブジェクトが作成されたら、スクリプトで使用できます。
Windows スクリプト ホストは、2 つのアプリケーションで構成されます。 1 つは Windows デスクトップ (WScript.exe
) からスクリプトを実行します。もう 1 つでは、コマンド プロンプト (CScript.exe
) からスクリプトが実行されます。
デスクトップからスクリプトを実行するには、スクリプト ファイルをダブルクリックするだけです。 スクリプト ファイルはテキスト ファイルです。 慣例により、VBScript ファイルの拡張子は .vbs
で、JScript ファイルは .js
。
コマンド プロンプトからスクリプトを実行するには、次のようなコマンド ラインで Cscript.exe
アプリケーションを実行します。
cscript "c:\\sample scripts\\chart.vbs"
ここで、c:\\sample scripts\\chart.vbs
はスクリプトを含むファイルへのパスです。
次のコマンド ラインを入力して、Cscript.exe でサポートされているパラメーターの一覧を出力できます。
call cscript //?
Windows スクリプト ホストによって実行されるスクリプトで COM オブジェクトを使用するには、まずオブジェクトのインスタンスを作成する必要があります。 VBScript では、CreateObject()
メソッドを呼び出すことでこれを行うことができます。 JScript では、ActiveXObject
オブジェクトまたは WScript.CreateObject()
メソッドのいずれかを使用できます。 次の例は、VBScript を使用した CreateObject()
の呼び出しを示しています。
Dim objXL
Set objXL = CreateObject("Excel.Application")
次の例は、JScript を使用して ActiveXObject
オブジェクトを作成する方法を示しています。
var objXL = new ActiveXObject("Excel.Application");
または、JScript 内で WScript.CreateObject()
メソッドを使用します。
var objXL = WScript.CreateObject("Excel.Application");
COM オブジェクトのインスタンスを作成したら、オブジェクトを使用するスクリプトを作成できます。次に例を示します。
objXL.Visible = true;
CreateObject メソッドと ActiveXObject オブジェクトに加えて、VBScript と JScript の両方で GetObject メソッドが提供され、オブジェクト インスタンスが返されます。
関連トピック