在VB6 IDE中工作时卸载COM控件
我日常工作的一部分是维护和扩展遗留的VB6应用程序。通用引擎是用C/C++编写的,VB6使用这些函数来提高性能 说到异步编程,C接口是不够的,我们依靠COM控件向VB6触发事件 我的问题是,当我在VB6中注册控件时,VB会将该控件加载到内存中,直到我退出VB6 IDE时才会卸载它。由于控件一直在加载,我无法在VC6中重新编译它,因为DLL文件已锁定 我找到的解决方案不是在VB中启用该控件,而是将在VB6 IDE中工作时卸载COM控件,com,vb6,Com,Vb6,我日常工作的一部分是维护和扩展遗留的VB6应用程序。通用引擎是用C/C++编写的,VB6使用这些函数来提高性能 说到异步编程,C接口是不够的,我们依靠COM控件向VB6触发事件 我的问题是,当我在VB6中注册控件时,VB会将该控件加载到内存中,直到我退出VB6 IDE时才会卸载它。由于控件一直在加载,我无法在VC6中重新编译它,因为DLL文件已锁定 我找到的解决方案不是在VB中启用该控件,而是将CreateObject()与我的控件的全名一起使用。问题是,我必须将我的控件声明为对象,因为VB6对
CreateObject()
与我的控件的全名一起使用。问题是,我必须将我的控件声明为对象,因为VB6对我正在使用的接口一无所知,而且我无法访问IntelliSense,这是一个难题
你知道如何在退出应用程序后或直接在IDE中告诉VB6卸载控件吗?我很确定没有好的方法强制VB6卸载控件 我就是这么做的。。。在VC下运行VB6,而不是并行运行Visual C和Visual Basic:
- 您可以在COM对象中设置断点,并使用完整源代码调试器对其进行调试
- 您可以愉快地在C和VB中同时调试
- 每当VB6运行时,它总是具有最新版本的COM DLL