おはようございます。
題記の件、質問させてください。
HTMLのスクリプト欄にコードを記述し、ボタンが押下されるとネットワークに接続したり、アプリケーションを実行したり、という処理を行いたいのですが、
WScriptを起動する方法が分かりません。
private Sub GetLog()
dim wshShell, strCmd, strOpt, intErr
set wshShell = WScript.CreateObject("WScript.Shell")
strHost = (ホスト名)
strCmd = "pwd"
strOpt = ""
intErr = wshShell.Run("%SystemRoot%\system32\rsh.exe " + strHost + _
strCmd + " -display %ComputerName%:0 " + strOpt, 0, FALSE)
set wshShell = Nothing
End Sub
このコードで WScriptがありません とエラーになります。
どうしたらよいのか、ご存知でしたら教えてください。
WScriptは、VBScriptが所有しているオブジェクトではありません。
WSHという実行ホストが提供するオブジェクトであり、WSH以外からは使えません。
VBScriptでは、VBのAppオブジェクトやClipboardオブジェクトが使えませんし、
Excel VBAでは、IIS/ASPのServerオブジェクトやSessionオブジェクトが使えませんし、
VB6では、HTML ApplicationのHTA:APPLICATIONオブジェクトが使えませんし、
HTML上のスクリプトからは、WSHのWScriptオブジェクトが使えません。
実行ホストが提供するオブジェクトを利用できるのは、基本的に、
そのホスト上で動作させている場合だけです。
> HTMLのスクリプト欄にコードを記述し、ボタンが押下されると
> ネットワークに接続したり、アプリケーションを実行したり、
> という処理を行いたいのですが、
HTMLから、ローカルの資源にアクセスする事は禁止されています。
そのような目的であれば、HTMLではなく、HTAやWSHを利用するべきでしょう。
そうなんですかー 困りました。
スクリプトをどこかのフォルダに置いておいて WScriptをキックする、
という風な方法しかないんでしょうか。
(HTMLのページから スクリプトを実行、できるかな)
ツイート | ![]() |