Windows スクリプト ホストでの COM オブジェクトの使用
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 メソッドが用意されています。
関連トピック