VBScriptで記述されたスクリプトファイルが、WScript.exeで起動されているのか、CScript.exeで起動されているのかを判別する方法です。
スクリプトによってはWScript.exeのみサポートとか、CScript.exeのみサポートとかがあると場合は、本資料が参考になるでしょう。
以下に、WScript.exe, CScript.exeを判別するサンプルスクリプトを記します。
WSCRIPT_EXE="wscript.exe" CSCRIPT_EXE="cscript.exe" If LCase(Right(WScript.FullName, Len(WSCRIPT_EXE))) = WSCRIPT_EXE Then WScript.Echo WSCRIPT_EXE & "running." ElseIf LCase(Right(WScript.FullName, Len(CSCRIPT_EXE))) = CSCRIPT_EXE Then WScript.Echo CSCRIPT_EXE & "running." Else WScript.Echo "unknown" End If
デスクトップに配置した dist.vbs を起動した時の出力です。
コマンドプロンプトを起動して dist.vbs を起動した時の出力です。
C:\Users\Sakura\Desktop>cscript.exe dist.vbs Microsoft (R) Windows Script Host Version 5.8 Copyright (C) Microsoft Corporation. All rights reserved. cscript.exerunning.
以上、WScript.exe, CScript.exeの判別スクリプトの紹介でした。