0
リリースモードのC#で実行されません。 Windowsサービスのメソッドと実行されるスレッドは、サービスがまだ生きているかどうかを確認するために無限に(OnStop()
が呼び出されるまで)実行される単なるスレッドです。&Windowsサービスは、私がデバッグモードでそれを実行したときに動作し、(Visual Studioの2008年に)私は、Windowsのサービスに取り組んでいます
public Timer myTimer;
public string fileName;
string txtLog;
public Descarga()
{
InitializeComponent();
myTimer = new Timer();
myTimer.Interval = 10000;
myTimer.Elapsed += new ElapsedEventHandler(myTimer_Elapsed);
}
protected override void OnStart(string[] args)
{
myTimer.Enabled = true;
}
私がデバッグモードで起動するとき、これは完全に正常に動作しますが、私はリリースでそれを実行すると、サービスは、ホストされますが、コードが実行されません。
サービスのユーザーが変更され、問題が引き続き発生します。
種は、あなたのOnStart
protected override void OnStart(string[] args)
{
myTimer.Enabled = true;
}
タイマーを開始している、私はあなたのコード内で見ることができるものから
「Timer」クラスはどちらを使用していますか? –
@ToniWenzel - コンテキストからは、['System.Timers.Timer'](https://msdn.microsoft.com/en-us/library/system.timers.timer(v = vs.110) .aspx)。他のFX Timerクラスは、さまざまなプロパティ/コールバックの概念を持っています。 –
リリース/サービスとして実行すると、「サービスは開始されましたが停止しました...」の行に沿ってメッセージが表示されますか? –