我有一个关于从本机 C++ 应用程序创建的 COM C# 组件的问题。
C# 组件引用了一个包含 COM 接口的程序集。所以项目 A(.dll) 包含 COM 接口,项目 B(.dll) 包含实现该接口的 COM 类。
然后使用我系统上某个文件夹中的 regasm 注册此 C# COM 组件,例如:C:\TestComponent 其中包含 A.dll 和 B.dll,B 是使用 regasm 注册的组件。
当我安装在另一个路径中的本机 C++ 应用程序(COM 服务器)试图从项目 B 创建 C# COM 类的实例时,失败并抱怨找不到 A.dll。
如果我将(仅)A.dll 复制到我的本机 C++ 应用程序的安装目录中,则一切正常。
关于如何告诉我的本机 C++ 应用程序它需要在指定目录或 B.dll 所在目录中找到 A.dll 的任何想法?
亲切的问候,德怀特