C#がTopshelf使用してWindowsサービスを作成します

Topshelf -この執筆の目的は、Windowsサービスを開発する最も簡単な方法の1を記録することです。Topshelf.dll:使用前にダウンロードされた依存関係  Topshelf.4.2.0.zipを  直接Nugetを装着することで:インストール・パッケージTopshelf

Topshelf文書住所:  https://topshelf.readthedocs.io/en/latest/configuration/quickstart.html

直接コードに

パブリック クラスTownCrier 
{ 
    読み取り専用タイマ_timer。
    パブリックTownCrier()
    { 
        _timer = 新しいタイマ(1000年){AUTORESET = }。
        _timer.Elapsed + =(送信者、EventArgs)を=> Console.WriteLineを(" それは{0}であり、すべてが順調である" 、DateTime.Now)。
    } 
    公共 ボイド開始(){_timer.Start()。}
     公共 ボイド停止(){_timer.Stop()。} 
} 

パブリック クラスプログラム
{ 
    公共 静的 ボイドメイン()
    { 
        VARの RC = HostFactory.Run(X =>                                    // 1 
        { 
            x.Service <TownCrier>(S =>                                    // 2 
            { 
               s.ConstructUsing(名 => 新しい TownCrier());                 // 3 
               秒。 WhenStarted(TC => tc.Start());                          // 4 
               s.WhenStopped(TC => tc.Stop());                           // 5 
            }); 
            x.RunAsLocalSystem();                                        //6 

            x.SetDescription(" サンプルTopshelfホスト")。                   // 7 
            x.SetDisplayName(" スタッフ");                                  // 8 
            x.SetServiceName(" スタッフ");                                  // 9 
        })。                                                             // 10 

        VARの EXITCODE =(INT)Convert.ChangeType(RC、rc.GetTypeCode())。  // 11 
        Environment.ExitCode = EXITCODE。 
    } 
}

インストールサービスここで注意すべきコマンドラインインストールを:あなたは、コマンドラインウィンドウを実行する管理者を使用する必要があります!

コマンドラインウィンドウが(例のSERVER.EXE手順で、自己交換)関与することになります。

インストールサービスはインストールSERVER.EXE

サービスSERVER.EXEスタートを開始します

サービスSERVER.EXE停止を停止します

サービスSERVER.EXEのアンインストールをアンインストールします


参考記事  https://www.jianshu.com/p/56dc3ca16528

おすすめ

転載: www.cnblogs.com/su-king/p/11389444.html