Windows サービスのプログラミングについて: Windows サービスを停止するには?
非常に単純化されたコード例 (C#) は次のとおりです。
// Here is my service class (MyTestService.cs).
public class MyTestService:ServiceBase{
// Constructor.
public MyTestService(){
this.ServiceName = "My Test Service";
return;
}
};
// My application class (ApplicationClass.cs).
public static class ApplicationClass{
// Here is main Main() method.
public static void Main(){
// 1. Creating a service instance
// and running it using ServiceBase.
MyTestService service = new MyTestService();
ServiceBase.Run(service);
// 2. Performing a test shutdown of a service.
service.Stop();
Environment.Exit(0);
return;
};
};
だから:「My Test Service」を作成して開始し、停止しました。しかし、Services.msc を調べていると、「My Test Service」は引き続き実行され、「停止」リンクをクリックした場合にのみ停止します。なんで?- service.Stop()コマンドが何もしないのはなぜですか?
ServiceController.Stop() も何もしません!
Main() メソッドからサービスを停止するにはどうすればよいですか?