我有一个.Net 3.0应用程序需要将一个整数传递给同一台机器上的另一个程序。我正在使用WCF服务执行此操作,但在尝试在本地机箱上托管服务时遇到了用户权限问题。任何有关如何实现这一目标的想法都将受到高度赞赏。

谢谢,

戴夫

有帮助吗?

解决方案

WCF仍然是前往这里的方式。

通常,对于同一台机器上的进程间通信,您将使用命名管道通道。如果你没有使用它,我建议你这样做,然后确定托管中的错误是什么。

如果两个程序都有正在处理的消息循环,并且您正在发送一个整数,那么您也可以通过P / Invoke层调用SendMessage,但这只是因为您发送的数据等于或者比SendMessage允许的小。较大的消息需要像WCF这样的东西。

其他提示

.NET Remoting 是一种方式在程序之间传递消息。

你是怎么主持的?请注意,使用http的非管理员程序需要使用该端口的权限(在http.sys中)。这是通过netsh(Vista)或(IIRC)httpcfg(XP)。

例如,请参见此处

WCF 是要走的路。您应该使用 NetNamedPipeBinding 来保护相同的计算机通信。
有关WCFBindings的更多信息,请访问 https://msdn.microsoft.com /en-us/library/ms730879(v=vs.110).aspx

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top