人気ブログランキング | 話題のタグを見る

[VBScript] VBSへのドロップ実行ではホストやカレントディレクトリが異なる

おはヨーグルト。どーもボキです。

VBSファイルを実行するとき
「ダブルクリックで実行する場合」 と 「ドラッグ&ドロップで実行する場合」 とでは、
実行環境条件が多少異なる。

以下のソースファイルは「D:\DEV\VBS」に保存した。これを実行するとよく分かる。
Set objWS = CreateObject("WSCript.Shell")
MsgBox _
"ホスト" & vbTAB & ": " & WScript.FullName & vbCRLF &_
"カレント"& vbTAB & ": " & objWS.CurrentDirectory _
,64,"ホスト と カレントDir"
[VBScript] VBSへのドロップ実行ではホストやカレントディレクトリが異なる_a0021757_76061.gif
ダブルクリックで実行した場合
ホストは設定値(CScript)のまま、VBS保存フォルダで実行される

[VBScript] VBSへのドロップ実行ではホストやカレントディレクトリが異なる_a0021757_76242.gif
ファイルドロップで実行した場合
ホストはWScriptとなり、ログインIDルートフォルダで実行される


ドロップ実行の場合、CScriptホストを指定しても、WScriptホストで実行される。
CScriptで実行したい場合は、引数を引き継いだ上で、指定したホストで実行するを利用するとよい。


by yozda | 2012-06-23 07:09 | プログラミング | Comments(0)