我们有一个正在运行的Windows服务,还有一个控制台应用程序用于配置此服务,我们还可以选择查看一些日志记录。
这样做的丑陋之处在于,这种通信是由文本文件进行的,控制台应用程序将其写入文本文件,而服务会读取该文本文件,反之亦然。
您将如何使用此通讯?不能选择TCP/IP,因为控制台应用程序将仅用于本地运行的服务。
Windows API SendMessage应该走的路?
谢谢!
最佳答案
如果将.net用作此类事物的构建者,并且相对易于使用,我建议将WCF作为Windows上所有通信的第一要考虑的因素。由于您不使用TCP,因此建议您使用Named Pipes Binding。
机器内通讯也有许多Windows通讯api。 Named Pipes(如上所述),MailSlots,Shared Memory (Memory Mapped files)等。
我的建议是将命名管道与WCF或 native 一起使用。
关于windows - 控制台应用程序与Windows服务进行通信,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2159005/