將服務代碼整合到.NET 控制台應用程式
如何將控制台應用程式轉換為Windows 服務而不添加單獨的專案?
解決方案:
你可以將服務代碼無縫整合到控制台應用程式中,使其能夠作為控制台應用程式和服務運行。請考慮以下技術:
using System.ServiceProcess; public static class Program { const string ServiceName = "MyService"; public class Service : ServiceBase { public Service() { ServiceName = Program.ServiceName; } protected override void OnStart(string[] args) { Program.Start(args); } protected override void OnStop() { Program.Stop(); } } static void Main(string[] args) { if (!Environment.UserInteractive) { // Running as service using (var service = new Service()) ServiceBase.Run(service); } else { // Running as console app Start(args); Console.WriteLine("Press any key to stop..."); Console.ReadKey(true); Stop(); } } private static void Start(string[] args) { // OnStart code here } private static void Stop() { // OnStop code here } }
說明:
以上是如何將服務代碼直接整合到 .NET 控制台應用程式中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!