- PR -

[ASP.NET]SHELL関数でサーバーAPを起動

投稿者投稿内容
おひろ
ベテラン
会議室デビュー日: 2003/07/23
投稿数: 63
投稿日時: 2003-07-23 17:45
環境 : Win2000Server + VS.NET2002
ASP.NETで開発したアプリケーションで、クライアントのブラウザからサーバー上の
EXEファイルを起動したいと考えています。
SHELL("\\サーバー名\共有ディレクトリ名\xxxxx.exe")
と直接コーディングして実行してるのですが、うまくいきません。
SHELL関数を利用してうまくサーバー上のEXE実行する方法はないでしょうか。
SHELL関数以外の方法でも構いませんので、ご存知の方教えてください。

おひろ
ベテラン
会議室デビュー日: 2003/07/23
投稿数: 63
投稿日時: 2003-07-23 17:57
申し訳ありません、補足です。
サーバーのEXEをクライアント上で実行したいわけではなく、
サーバーのOS上で実行したいのです。
サーバーで実行された結果はクライアントに返らなくても構いません。
よろしくお願いします。
ウィリー
常連さん
会議室デビュー日: 2003/01/24
投稿数: 24
お住まい・勤務地: 千葉県
投稿日時: 2003-07-23 19:16
こんにちは。

私はこれで解決しました。

Processクラスを利用

Private Sub StartWithArguments()
Dim myproc As System.Diagnostics.Process
myproc = New System.Diagnostics.Process
myproc.Start("C:\APP.EXE", "ここに引数")
End Sub
がつん
ベテラン
会議室デビュー日: 2003/07/07
投稿数: 62
お住まい・勤務地: Sydney
投稿日時: 2003-07-25 12:53
こんにちは。
権限がないとかじゃ...?
ためしに、ネットワークドライブを貼り付けてやってみたらどうですか?
かやん
会議室デビュー日: 2003/08/12
投稿数: 13
投稿日時: 2003-08-12 09:43
今日和。

便乗して質問させてください。
私の場合は、クライアント側で実行させたいんですが…
ネームスペース様の方法も験してみたのですが、起動もエラーもおこりません。
それ以前の書き方ですと、System.IO.FileNotFoundExceptionが発生し、
ファイルがないと怒られてしまいます。
どなたかお教えいただければ幸いです。よろしくお願いします。
Jubei
ぬし
会議室デビュー日: 2002/03/02
投稿数: 830
お住まい・勤務地: 関西
投稿日時: 2003-08-12 11:37
こんにちわ。諸農です。

別スレッドの方がいいかもしれないですね。
あと、どのようなコードを書かれたのか、
何も起こらない(またはエラーが出る)コードサンプルを
アップされた方が、コメントが付きやすいかもしれないですね。

ではでは(^^)/
rvmx
大ベテラン
会議室デビュー日: 2002/09/26
投稿数: 184
お住まい・勤務地: 愛媛県
投稿日時: 2003-08-12 12:09
今日は

サーバーのexeソフトを、クライアントのブラウザより動かしたい時は、
http://***/***/・・・/***.exeをアドレス欄へ入れてリターンで起動出来ます。
但し、サーバー側に適切な権限(実行を許可)を与えておく必要が有ります。
又、クライアント側でサーバーのexeソフトを起動したい時は、FrameWorkが1.1より
ノータッチ・デプロイメントにより可能みたいです、但し制約が有りますが。

かやん
会議室デビュー日: 2003/08/12
投稿数: 13
投稿日時: 2003-08-12 12:49
ご返答ありがとうございます。

そして説明が足りなくて申し訳ないです。
rvmx様の方法だときちんと起動はしてくれるんですが、
クライアント側のブラウザ上に設置したボタンのクリックで起動するようにしたかったのです。

コードは
Shell("http://サーバ名/フォルダ名/xxx.exe", , , )
で呼んでいるのですが、Shellの前にCallとか必要なのでしょうか?
FrameWorkは1.1です。
よろしくお願いします。

スキルアップ/キャリアアップ(JOB@IT)