如何在为 com interop 注册的 class 库项目中引用非强类型的 dll?

How I can reference a not strong typed dll on a class library project that is registered for com interop?

我从 .net 创建了一个测试项目作为 class 库,我检查了 com interop 选项的注册,它在 visual foxpro 中工作。

然后我尝试在这个项目上引用我需要的.net dll,它不是强类型直接放在GAC上)。 我有 comvisible class 与测试项目上的一个方法调用 .net 引用的 dll 上的一个方法,当我从 visualfoxpro 调用这个方法时,我得到的错误是

"Could not load file or assembly or one of its dependencies ..."

我测试了在调试文件夹(我编译然后测试)和我正在测试的客户端应用程序文件夹中有引用的 dll,以在 foxpro 和其中的 none 中使用 com dll com dll 找到引用的 dll。

我有另一个可能的文件夹来放置要找到的dll?我需要一些代码?

当我重新编译项目时,它开始工作,似乎由于某种原因自动发布到 COM 注册表不会自动发生。

如果有人遇到这个问题,

测试使用 regasm nameOfLibrary.dll /tlb:nameOfLibrary.tlb /codebase 在 .net dll 上

它在 COM 注册表上加载 dll 而没有将其放在 GAC 上(关于版本的一些警告,请搜索)...

另一种选择是制作一个 "registration free activation" 无需使用 regasm 注册 COM 以稍后使用 dll。