为什么无法从 VB IDE(VB6 和 VBA)调用 RegFree COM 和 .NET?
我有一个示例项目,当从编译的 VB6 调用时可以正常工作,但不能从 IDE 或 Excel 的 VBE 调用。
有 3 个 DLL QA.DLL、QB.DLL、QAW.DLL。 QA是用C#.NET编写的,QB和QAW是用VB6编写的。 QAW 是 QA 的 COM 包装器。
在调用代码中,我创建一个激活上下文并加载一个清单文件。
使用 VB6 创建的 exe 一切正常,但在 VB6 或 Excel 的 VBA 调试模式下则不行。
您知道 IDE 调用有什么不同以及为什么它不起作用吗?
I have an example project with works when called from compiled VB6 but not from the IDE or from Excel's VBE.
There are 3 DLLs QA.DLL, QB.DLL, QAW.DLL. QA is written in C#.NET, QB and QAW are written in VB6. QAW is a COM wrapper of QA.
In the calling code I create an Activation Context and load a manifest file.
All works fine from the exe created with VB6, but not in debug mode in VB6 or in Excel's VBA.
Any ideas what it is that is different about the IDE call and why it doesn't work?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是因为该应用程序实际上是从 VB6.exe 所在的目录运行的。实际上,您可以将 dll 和清单放在那里并让它工作,但是如果您进行大量的 RegFree 开发,该目录很快就会变得一团糟。
It is because the application is actually running from the directory that the VB6.exe is located. You could actually put your dll's and manifest there and have it work, but if you do much RegFree development that directory is going to become a mess very quickly.