C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: Webサーバ上でEXEを実行するには?


(過去ログ 107 を表示中)

[トピック内 7 記事 (1 - 7 表示)]  << 0 >>

■63746 / inTopicNo.1)  Webサーバ上でEXEを実行するには?
  
□投稿者/ tom (1回)-(2012/10/05(Fri) 11:55:06)

分類:[ASP.NET (C#)] 

Visual Studio 2005でC#を使いWEBアプリ制作中です。
制作したWEBアプリが時々おかしくなり、WWWサービスを再起動すると元通りに直ります。
おかしな動作をするときはtry catchで検出できていますので
catchの中でWWWサービスを再起動させようと思い下記を実行しましたが、再起動しません。
  prog.StartInfo.FileName = "NET";
  prog.StartInfo.Arguments = "STOP W3SVC";
  prog.Start();
  prog.StartInfo.FileName = "NET";
  prog.StartInfo.Arguments = "START W3SVC";
  prog.Start();
Windowsアプリではこれで再起動します。
Webアプリは何か方法があるのでしょうか?
よろしくお願いします。

引用返信 編集キー/
■63747 / inTopicNo.2)  Re[1]: Webサーバ上でEXEを実行するには?
□投稿者/ まり (3回)-(2012/10/05(Fri) 12:12:27)
自分自身が停止してしまうので起動するコードが実行されないと予想されます

WWWサービスを再起動するBatファイルかWindowsアプリを作成して
それをWebアプリで実行するとどうでしょうか?

以下駄文
応急処置としての対応と受け止めていますが
そうでないならこういったやり方はやめておいたほうがよいと思います

WWWサービスを再起動するということは他のWebアプリも巻き込まれるということなので
IISのバージョンによっては実行タスクをわけることもできるので
Webアプリケーション単位(アプリケーションプール)での再起動を行う方がよいと思います
引用返信 編集キー/
■63752 / inTopicNo.3)  Re[2]: Webサーバ上でEXEを実行するには?
□投稿者/ tom (2回)-(2012/10/05(Fri) 16:22:38)
No63747 (まり さん) に返信
Batファイルを作ってみましたが、ダメでした。
何かいい手がないでしょうか?

引用返信 編集キー/
■63753 / inTopicNo.4)  Re[1]: Webサーバ上でEXEを実行するには?
□投稿者/ オショウ (27回)-(2012/10/05(Fri) 16:32:44)
> おかしな動作をするときはtry catchで検出できていますので
> catchの中でWWWサービスを再起動させようと思い下記を実行しましたが、再起動しません。

  一般的に検出できているなら、再起動は不必要なんですが・・・
  それでも再起動しないといけないなら、それは検出できていない
  と言うことでしょう。

  原因部分を正確に把握して対処することが肝要。

※ どうしても再起動させたいなら・・・
  Windowsサービス作って、Web側からサービスに委任するという仕掛け
  が可能かと。私はそうやったことがあります。

以上。参考まで
引用返信 編集キー/
■63772 / inTopicNo.5)  Re[2]: Webサーバ上でEXEを実行するには?
□投稿者/ まり (4回)-(2012/10/09(Tue) 08:50:58)
私が確実に回答できると言う訳ではありませんが

どのようなBatファイルをどのように呼び出したのかを書いてみてはいかがですか?
引用返信 編集キー/
■63790 / inTopicNo.6)  Re[1]: Webサーバ上でEXEを実行するには?
□投稿者/ 渋木宏明 (21回)-(2012/10/11(Thu) 11:21:51)
渋木宏明 さんの Web サイト
2012/10/11(Thu) 11:22:27 編集(投稿者)

> 制作したWEBアプリが時々おかしくなり、WWWサービスを再起動すると元通りに直ります。

他の人もそれとなく書いていますが、本来はその以上動作の原因を突き止めて問題を除去するべきです。

重々承知の上とは思いますが、念のため。
引用返信 編集キー/
■63796 / inTopicNo.7)  Re[2]: Webサーバ上でEXEを実行するには?
□投稿者/ なちゃ (3回)-(2012/10/11(Thu) 23:27:26)
AppDomainの再起動で済むなら、HttpRuntime.UnloadAppDomain で行けるでしょう。
サービス自体の再起動は、権限の問題もありますから簡単にはできませんしやめといたほうがいいでしょう。

引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -