- - PR -
ASP.NETからバッチコマンドの実行
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-03-07 02:51
ASP.NET2003で教えてほしいことがございます。
画面のボタンを押したときに別のプログラム(.bat)を起動しようとおもい shellで以下のように組みましたが、エラーも出ずに処理が終わってしまいます。 (実際のバッチのプログラムは動いていません、ASPからでなく単独でバッチを実行すると動くのは確認しています) Shell("C:\\Test\\test.bat", AppWinStyle.NormalFocus, True) バッチプログラムはVB.NET2003で作成したexeをキックしているだけです。 どなたか、ご存知の方、よろしくお願いいたします。 | ||||||||
|
投稿日時: 2006-03-07 03:14
サーバ側で起動ということで良いのですね。 バッチファイルの起動について _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-03-07 07:12
Dim myprocess = New System.Diagnostics.Process
myprocess.StartInfo.FileName = "C:\Test\test.bat" myprocess.Start() このようにしてみましたが、起動しておりません。 もう少し調べてみます。 | ||||||||
|
投稿日時: 2006-03-07 09:07
遅延バインディングになってしまってますね。 Dim myprocess As New System.Diagnostics.Process() ですね。
バッチの中で何をやっているんでしょう。 notepad.exe だとどうでしょうか? _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-03-07 11:14
実行したいファイル群に対するアクセス権は
妥当ですか? IIS5.0/5.1ならASPNET IIS6.0ならNETWORK SERVICE のアクセス権が実行したいファイルに対してあるかどうか 確認してください。 _________________ ASP/ASP.NETだいすき。 ASP++ by Moo http://moo-asp.net/ 日記は ほぼ毎日更新中 http://d.hatena.ne.jp/aspx/ | ||||||||
|
投稿日時: 2006-03-07 22:54
みなさん、いろいろと情報ありがとうございます。
Dim myprocess As New System.Diagnostics.Process myprocess.StartInfo.FileName = "C:\\Test\\test.bat" myprocess.Start() test.batの中身を"notepad.exe"に変更してみましたが、実行されませんでした。 また、IIS5.1ですのでASPNETの権限を C:\\Test\\test.bat notepad.exe 両方に与えてみましたが、実行されませんでした。 何かほかに考えられることなどございましたら、アドバイスお願いいたします | ||||||||
|
投稿日時: 2006-03-08 10:48
「バッチプログラム」や「VB.NET2003で作成したexe」は正しく動くことは確認しているんですよね。
"test.bat2"などと存在しないファイル名を指定したら例外が出ますよね? やっぱり起動はしてるんじゃないでしょうか。 じゃんぬねっとさんの質問の答えが無いようなので確認しますけど、 「サーバーのタスクマネージャのプロセス一覧で、ユーザー名がASPNETのものを見てみても、notepad.exeなどは見つからない」 ということを確認しているわけですね? | ||||||||
|
投稿日時: 2006-03-08 11:12
素人の横やりでごめんなさい。
私も気になったので確認してみましたが、一郎さんがおっしゃられている通り、「サーバ側では」メモ帳は起動しますね。ただ、プロセスとして起動しており、画面上は見えないですけど。それだけの問題?! <関係ありませんが、私の場合、サーバ=自端末です> |