DOBON.NET DOBON.NETプログラミング掲示板過去ログ

ServiceBase.Runを抜ける方法

環境/言語:[Windows 2003/VS.NET 2003]
分類:[.NET]

C++.NET でサービスプログラムを作っています。
標準の、ServiceBase クラスを派生したクラスです。
_tmain 内で、Thread クラスで子スレッドを作成&開始して、
最後に ServiceBase.Run をコールしています。

子スレッド内で異常を検出した場合に、自プロセスを
終了したいと思っています。この場合、どうしたら良い
のでしょうか?
ServiceBase.Run で停止しているところを抜けられれば
それでOKなのですが、何を関数コールすれば抜けるのかが
どうしてもわかりません。
方法はなくて、Process.Kill で終了すれば良いのでしょうか?
(強制終了な感じがします)
それとも、自サービスに対して net.exe STOP <ServiceName> を
叩く必要があるのでしょうか?(有り得ませんが・・・)

よろしくお願いします。
  • 題名: Re[1]: ServiceBase.Runを抜ける方法
  • 著者: TK
  • 日時: 2006/02/23 11:28:28
  • ID: 15227
  • この記事の返信元:
  • この記事への返信:
    • (なし)
  • ツリーを表示
> 方法はなくて、Process.Kill で終了すれば良いのでしょうか?
> (強制終了な感じがします)

これを試してみましたが、自プロセスが終了しませんでした。
例外も発生しません。謎です・・・

DOBON.NET | プログラミング道 | プログラミング掲示板