有没有办法在两个不同的服务之间进行通信?我有一个已经运行的服务。有没有办法创建可以附加到第一个服务并向其发送和接收日期的第二个服务?
我还想从控制台应用程序访问 Windows 服务并附加到它。可能吗?
最佳答案
您可以尝试使用以下方法实现:
- IPC(通过 Named pipes 进行进程间通信)
- 共享内存 ( Memory mapped files )
- 套接字(TCP/IP)
使用 WCF 的示例:Many to One Local IPC using WCF and NetNamedPipeBindin .
其他示例:A C# Framework for Interprocess Synchronization and Communication .
一切都取决于您使用的 .NET Framework 版本。如果您使用 .NET 3.0 及更高版本,那么您可以查看 WCF .如果没有,那么你只能靠自己了,你可以用谷歌搜索关键字P/Invoke (CreateFileMapping、MapViewOfFile、CreatePipe...)。
关于c# - 基于 C# 的不同服务之间的通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5486917/