コマンドの実行


このドキュメントはJavaScriptについて知識があるという前提で書かれています。

■はじめに

スクリプトの中から、特定のコマンドを実行するには WSHShellのRunメソッドを使用します。

WshShell.Run(strCommand [,windowStyle,wait]);

strCommandに実行するコマンドを指定します。 WindowStyleには、実行するプロセスのウインドウスタイルを定義します。 WindowStyleの種類などについては、WSHリファレンスを参照してください。

以下は、ノートパッドを起動するプログラムです。

var WshShell = WScript.CreateObject("WScript.Shell");
WshShell.Run("%windir%/notepad");
■Netscapeを起動する

少し応用して、Netscapeを起動する方法を紹介します。

var WshShell = WScript.CreateObject("WScript.Shell");
var fs = WScript.CreateObject("Scripting.FileSystemObject");
var NNdir = WshShell.RegRead("HKCU\\Software\\Netscape\\Netscape Navigator\\Main\\Install Directory");
 NNdir += "\\Program\\netscape.exe";
NNdir = (fs.GetFile(NNdir)).ShortPath; //8.3形式のパスを取得

WshShell.Run(NNdir,1,true);

これは、まずレジストリからNetscapeのインストールされているディレクトリを調べます。 そして取得したNetscape本体のパスをRunメソッドの引数で渡します。 ここで注意が必要なのは、Run()で渡すコマンドは、8.3形式でないとダメということです。 ここでは、File オブジェクトを生成して、そのShortPathプロパティを参照する事により、 8.3形式を取得しています。