プロが教えるわが家の防犯対策術!

【質問】
ASPからOSコマンドを送る方法は
ありませんでしょうか?
例)
PHPやPerlにおけるsystem()関数、backtick 演算子等に該当する処理。

【環境】
ASPをVBScripttにてプログラミングしています。
環境はWindowsXP Proでローカルで、
IISを立ち上げプログラミングしています。

以上。よろしくおねがいします。

A 回答 (2件)

Wscript.ShellオブジェクトのRunメソッドで可能です。



'サーバ側でメモ帳を通常サイズで起動する
Set objWsh = Server.CreateObject("WScript.Shell")
objWsh.Run "c:\windows\notepad.exe", 2, 1
Set objWsh = Nothing

この回答への補足

hequilさんありがとうございます。

ただ、残念なことに教えて頂いたコードは
実行することができませんでした。
具体的には、ステータスバーに”開いています”が
永遠と表示されるだけです。

notepad.exeをC:\Inetpub\wwwrootに移動し
objWsh.Run "c:\windows\notepad.exe", 2, 1 を
objWsh.Run "C:\Inetpub\wwwroot\notepad.exe", 2, 1
に書き換えましたがそれでも変わりませんでした。

何か他にご存知でしたらお願いします。

補足日時:2005/07/04 18:46
    • good
    • 0

>ただ、残念なことに教えて頂いたコードは


>実行することができませんでした。
何を根拠に実行することが出来なかったと確認したのでしょうか?
IISはバックグラウンドで動いているので、notepadのようなGUIアプリケーションを実行したところで、GUIが表示されないだけでプログラム自体は動いている可能性もあります。
なので、
>具体的には、ステータスバーに”開いています”が
>永遠と表示されるだけです。
と、エラーを出さずにnotepadが終わるのを待っているのではないでしょうか?

まずはCUI系のアプリケーション等を動かして、本当に外部プログラムが呼ばれていないのか確認してみてください。
また、外部プログラムの実行はRunよりはExecの方が制御しやすいかと思います。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!