Tips - WSH

【TOP】

名前付き引数と名前なし引数
WshNamed オブジェクトと WshUnnamed オブジェクトを使うと、名前付き引数と名前なし引数を扱うことができます。
WshNamed オブジェクトは名前付き引数のコレクション、WshUnnamed オブジェクトは名前なし引数のコレクションです。
参照の方法は、それぞれ、WScript.Arguments.Named、WScript.Arguments.Unnamed となります。
以下に引数にアクセスする例を示します。
コマンドラインからの実行を前提とし、GUIで実行された場合は終了するようにしました。
Option Explicit Dim named, unnamed, i, strOut ' GUIで実行した場合は終了 If InStr(WScript.FullName, "WScript.exe") > 0 Then WScript.Echo "このスクリプトはCUIで使用してください。" WScript.Quit(1) End If ' 名前付き引数 Set named = WScript.Arguments.Named ' 名前なし引数 Set unnamed = WScript.Arguments.Unnamed ' 名前付き引数にキー「file」があれば表示する。 If named.Exists("file") Then strOut = "キー「file」に「" & named("file") & "」が指定されました。" Else strOut = "キー「file」は指定されていません。" End If WScript.Echo strOut ' 名前付き引数にキー「uid」があれば表示する。 If named.Exists("uid") Then strOut = "キー「uid」に「" & named("uid") & "」が指定されました。" Else strOut = "キー「uid」は指定されていません。" End If WScript.Echo strOut WScript.Echo ' 名前なし引数を列挙 WScript.Echo "↓Unnamed↓" For i = 0 To unnamed.Count - 1 WScript.Echo unnamed(i) Next
このコードを実行した結果を以下に示します。
C:WSH>cscript //nologo Named_UnnamedArgs.vbs stop /file:a.xls 12.5 /o:"What's up?" キー「file」に「a.xls」が指定されました。 キー「uid」は指定されていません。 ↓Unnamed↓ stop 12.5 C:\WSH>
【戻る】