1
1
由COM介导的DLL称为进程内服务器。这就暗示了您的问题:它总是被映射到客户机的内存空间中,就像其他dll一样。类似的任何DLL 它 加载将映射到原始进程中。你的问题不清楚 为什么 您不想使用DLL。如果要保存资源,则考虑只复制数据;代码只加载一次。如果这是因为您希望他们共享数据,那么考虑使用共享内存。如果您真的希望三个.exe都由一个实例提供服务,那么您需要的是一个COM本地服务器,它将由.exe而不是.dll实现。 |
2
1
没有“创建本地服务器”这样的事情。必须将进程内服务器加载到每个使用者进程中,这是不可能的——每个使用者都是一个单独的进程,所以它有自己的代码和数据副本。 为了让单个进程为所有使用者执行COM服务器代码,您必须创建一个out-proc服务器。要执行后者,您可以重新设计COM服务器或尝试使用COM+服务器应用程序。通过这种方式,您可以有一个单独的进程来运行COM服务器代码,一些使用者可以连接到该代码。 |
Cleric · C#运行主动自动化对象-如何源事件? 6 年前 |
Daniël J · 使用GUI制作COM服务器的最佳实践是什么? 6 年前 |
Toponimo · 从Python访问COM方法 6 年前 |
user8666372 · 自动向可用引用添加引用 6 年前 |