在C#中实现“进程外”COM服务器需要什么?我正在尝试实现一个用C#编写的“进程外”COM服务器。我应该怎么办?我需要来自我的主C++应用程序的“进程外”C#代码,因为我无法将.NET运行时加载到我的主进程空间中,为什么?:我的C++代码位于一个DLL中,该DLL被加载到许多不同的客户端EXE中,其中一些使用不同版本的.NET运行时。由于只能将一个运行时加载到一个进程中,因此我最好的选择似乎是将我的C#代码放入另一个进程中。您可以使用System.EnterpriseServices.ServicedComponent创建COM+组件。因此,您将能够创建进程外和进程内(客户端)组件激活以及池化、远程处理、作为Windows服务运行以及COM+的所有优势。在这里我们可以读到这是可能的,但是exe将作为一个库加载,而不是像exe一样在它自己的进程中启动。我不知道这对你来说是否是一个问题?如果您希望它像真正的进程外com服务器一样工作,它还包含一些可能的解决方案。但也许使用另一种进程间通信方式会更好。就像.NetRemoting一样。我不推荐这样做,但您可以围绕C#库创建一个COM可调用包装器,然后创建一个VB6ActiveXexe项目,将调用委托给您的C#库。为什么不能将.net运行时加载到进程空间中?可以托管.net运行时并使用COM调用.net。以上就是C#学习教程:Whatdoesittoimplementan"outofproc"COMserverinC#?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
