我们正在将一个基于MFC的大型应用程序与一些托管的(.NET)插件集成。与这些插件的通信是通过COM完成的。
历史上,我们只使用注册表将这些插件(作为COM服务器)提供给应用程序。但是,现在我们正在尝试使用无需注册的COM互操作来实现这一点。
我们希望这些插件能够存在于与应用程序运行的目录分开的目录中,理想情况下可以放在任何地方。但是,由于无法解析与COM服务器DLL文件位于同一目录中的依赖程序集,因此我们似乎遇到了实例化服务器对象的问题。
“老式”的COM互操作通过在加载目标程序集时使用LoadFrom上下文来处理这个问题。但是激活上下文机制似乎不会这样做。
有人知道如何让这个工作吗?目前还不清楚我们是否可以在模块的SxS清单中识别依赖程序集,或者也许我们可以以不同的方式创建激活上下文?
感谢任何想法/提示!
Jeff
历史上,我们只使用注册表将这些插件(作为COM服务器)提供给应用程序。但是,现在我们正在尝试使用无需注册的COM互操作来实现这一点。
我们希望这些插件能够存在于与应用程序运行的目录分开的目录中,理想情况下可以放在任何地方。但是,由于无法解析与COM服务器DLL文件位于同一目录中的依赖程序集,因此我们似乎遇到了实例化服务器对象的问题。
“老式”的COM互操作通过在加载目标程序集时使用LoadFrom上下文来处理这个问题。但是激活上下文机制似乎不会这样做。
有人知道如何让这个工作吗?目前还不清楚我们是否可以在模块的SxS清单中识别依赖程序集,或者也许我们可以以不同的方式创建激活上下文?
感谢任何想法/提示!
Jeff