我有一个我写的Windows服务,我希望它在某个条件存在时引发一个事件。
我希望我的Windows表单应用程序能够接收这些事件。这可能吗?
此服务必须在所有用户都注销后运行,但是当他们登录并启动应用程序时,我希望它开始从服务接收事件。
答案 0 :(得分:2)
最简单的方法是在服务中创建WCF端点。您的应用程序将连接到该应用程序,然后使用普通事件委托从服务中处理信息。
如果需要,这也将允许多个客户端和远程客户端
对于非常旧的代码,有.NET远程处理,但如果可能的话,最好更新代码以使用更新的框架。
答案 1 :(得分:1)
您的Win App可能托管WCF服务端点。您的Win服务将尝试调用通知该WCF服务解析为localhost的方法。当Win App运行时,Win Service将成功连接并调用Notify方法。