2011-07-20 12 views
1

サーバー上でコンソールアプリケーションを実行するためにasp.netを取得しようとしています。私はそれを次のように実行することができます:asp.netサーバー上でコマンドラインアプリケーションを実行しています

System.Diagnostics.ProcessStartInfo info = 
new System.Diagnostics.ProcessStartInfo(filePath, ""); 
Process processChild = Process.Start(info); 
info.CreateNoWindow = false; 

私はコンソールアプリケーションウィンドウが表示される必要があります。現在は、バックグラウンドでプロセスとして実行されます。

アイデア?これも可能ですか?

+0

ここで、コンソールウィンドウを見たいですか?サーバー上で? ASP.NETを使用していて、すべてがサーバーで行われており、クライアントマシンから何も見えないことに注意してください。 – Kangkan

+0

はい、それは私が欲しいものです(サーバー)。コンソールアプリケーションは長い間実行され、サーバーにログインしてステータスを確認できるようにしたいと考えています。私はASPで出力を使用することができますが、私はむしろ単に代わりにコンソールウィンドウを開くと思います。 – Simon

+0

Process.Startの前にCreateNoWindow = falseを設定しましたが、まだ表示されません。 – Simon

答えて

1

ニースは、CreateNoWindowをfalseに設定する前にプロセスを開始しています。代わりに次のようにしてください:

System.Diagnostics.ProcessStartInfo info = 
new System.Diagnostics.ProcessStartInfo(filePath, ""); 
info.CreateNoWindow = false; 
Process processChild = Process.Start(info); 
+0

。そうです。他の方法で試してみましたが、まだ開きません。しかし、タスクマネージャでそれを見ることができます。 – Simon

+0

タスクマネージャに表示されている場合は、そのプロセスに対して表示されるユーザー名は何ですか?おそらく、別のユーザーとしてログインしていて、そのセッションを取得していない可能性があります。 – Kangkan

+0

ああ、私は参照してください。ユーザーはIISアプリケーションです。ご協力ありがとうございました。 [このガイド](http://weblogs.asp.net/hernandl/archive/2005/12/02/startprocessasuser.aspx)は、誰かが知る必要がある場合にユーザーを指定する方法を示しています。 – Simon

関連する問題