[VBScript] VBSへのドロップ実行ではホストやカレントディレクトリが異なる
2012年 06月 23日
VBSファイルを実行するとき
「ダブルクリックで実行する場合」 と 「ドラッグ&ドロップで実行する場合」 とでは、
実行環境条件が多少異なる。
以下のソースファイルは「D:\DEV\VBS」に保存した。これを実行するとよく分かる。
Set objWS = CreateObject("WSCript.Shell")
MsgBox _
"ホスト" & vbTAB & ": " & WScript.FullName & vbCRLF &_
"カレント"& vbTAB & ": " & objWS.CurrentDirectory _
,64,"ホスト と カレントDir"
ホストは設定値(CScript)のまま、VBS保存フォルダで実行される
ホストはWScriptとなり、ログインIDルートフォルダで実行される
ドロップ実行の場合、CScriptホストを指定しても、WScriptホストで実行される。
CScriptで実行したい場合は、引数を引き継いだ上で、指定したホストで実行するを利用するとよい。