use*_*956 9 c# windows-services topshelf
在标题中我想问一下使用这些在Windows服务上托管我的代码的可能性有什么区别.据我所知,这三个允许我创建将作为服务安装的exe.
ken*_*nny 14
Topshelf是我的首选,因为它可以让你充分利用服务和控制台应用程序.使用sc.exe可以将任何控制台应用程序作为服务执行,但exe不会作为服务本身进行交互.直接开发Windows服务让您拥有一项服务并与Windows进行交互,但是作为普通的控制台应用程序进行调试或运行并不容易.Topshelf允许您充分利用作为服务运行和作为普通控制台应用程序运行.
Windows 服务是响应服务控制消息(如启动、停止、暂停、继续等)的特殊应用程序类型。
虽然您确实可以使用 sc.exe 之类的工具将任何类型的进程转换为服务,但这些进程不会处理前面提到的控制消息。您通常会发现您可以启动一个进程但不能停止它等等。
我倾向于做的是将我的服务抽象出来(我认为 Topshelf 就是这样做的),拥有一个可以由本机 Windows 服务应用程序或控制台应用程序加载的服务库,这样我就可以两全其美(通常在安慰)。
| 归档时间: |
|
| 查看次数: |
3874 次 |
| 最近记录: |