我有一个.NET 2.0 DLL,它暴露了几类COM。该组件被称为BLogic.DLL.NET互操作COM DLL中表现不同VB6调试
我打电话从一个传统的Visual Basic 6.0应用这些类。我可以生成和EXE文件,如果我在与EXE相同的文件夹中有Blogic.dll,程序运行顺利。
但是如果我试图和VB6调试器中推出同样的程序,我得到一个:
Automation Error
The system cannot find the file specified
,当我在调试器快到我认为,在PLogic.dll文件无法找到。我试图把它放在System32文件夹和VB6.EXE文件所在的文件夹中,但我仍然得到相同的错误。
其他事实,可以帮助:
PLogic.dll不是一个强命名程序集。这取决于没有强烈签名的第三方引用,所以VS不让我强烈签名。但是,第三方功能不被VB6代码调用,并且它不是ComVisible。
如果这是真的,为什么我不能在vb6 IDE调试器中成功运行它? 其次,如果我不能强烈签署组装我怎么能要么把它在GAC或使用代码库选项? – Aheho 2010-05-25 18:54:24
运行IDE时,EXE文件夹不同。使用正常的Regasm.exe命令行,只需添加/ codebase。 – 2010-05-25 19:06:01
得到它的工作。谢谢。我没有意识到,当你没有一个强命名的程序集时,你可以忽略你使用/ codebase选项得到的警告。 – Aheho 2010-05-25 19:30:28