如何最简单地向.NET Windows服务发送通知?
怎么才能最简单地给一个.NET的Windows服务发送通知或者“唤醒”它呢?我需要用WCF吗?还是有更简单的方法? 我希望能通过一个Python(或者Iron Python)脚本在任何地方唤醒这个服务。 另外,如果这个服务停止了,有没有办法让我收到邮件通知呢?
3 个回答
1
- 有一个命令行工具叫做 SC,可以用来启动、停止和查询服务。
- 我不太确定从Python使用WMI是否简单,但WMI也可以让你远程控制服务。
- 如果你想用.NET,可以使用 ServiceController 类。
1
如果你想深入了解 .NET 的底层 socket 相关内容,可以使用框架里的 TcpListener 类。这里有一个 详细的教程。如果你想把它放在 Windows 服务中运行,可以看看这篇 文章。
0
我需要在Windows服务中托管一个WCF,这样才能让它接受远程通知。这样做是为了让部署这个解决方案变得尽可能简单。如果使用ServiceController的话,就需要正确设置权限,这样会比较麻烦。