这种情况听起来可能有点奇怪,但我必须用我所拥有的来玩。有一个Win2003 64位服务器操作系统和一个用Visual 6编写的遗留应用程序。这个应用程序由两部分组成:用VB6编写的ActiveX组件和使用它们的C++代码。
我需要调试组件的代码。我在服务器上安装了Visual 6,并且能够进入组件的代码。然后我发现了以下情况:
附加信息:C类初始化的最后一步是使用OLEDB提供程序打开到SQL服务器的ADO连接。
我很想知道如何解决这个问题。提前谢谢。
发布于 2010-06-02 15:24:21
VB6调试器有时有点古怪,我不确定64位操作系统是否支持它。
还有一些其他选项可用于调试VB6。
发布于 2012-05-01 16:11:18
MDAC注册ADO/OLEDB类,如下所示:%CommonProgramFiles%\System\Ole DB\sqloledb.dll
检查您的流程环境是否以某种方式损坏。如果使用“重新启动管理器”(当应用程序崩溃时重新启动),则不会恢复环境。在Sub Main中,我们用这样的东西来守卫
If LenB(Environ$("CommonProgramFiles")) = 0 Then
Call SetEnvironmentVariable("CommonProgramFiles", pvGetSpecialFolder(ucsOdtProgramFilesCommon))
End If
If LenB(Environ$("CommonProgramFiles(x86)")) = 0 Then
Call SetEnvironmentVariable("CommonProgramFiles(x86)", pvGetSpecialFolder(ucsOdtProgramFilesCommon))
End Ifhttps://stackoverflow.com/questions/2958428
复制相似问题