如果我編譯Win7上一個VB6應用程序,具有「類不支持自動化或不支持預期的接口」 ADODB.Connection錯誤
我編我的X64 Win7的機器,結果一些VB6代碼的.exe將無法在任何其他機器上正確運行。
VB6代碼只是一個按鈕,一個新的模板.exe文件,引用「Microsoft ActiveX數據對象2.6庫」,並在按鈕按下事件下面的代碼:
Dim db
Set db = New ADODB.Connection
它運行在正確我的機器,但沒有其他人(甚至其他Win7 x64機器)(更新:我發現兩個其他用戶在哪裏運行,其中一個是傑夫阿特伍德,但大多數機器有同樣的問題)
我檢查參考屏幕在兩臺機器上查看引用是否失敗(它不會編譯然後編譯好)。一切看起來合法。在64位機器上,引用進入SysWow64而不是system32。
我甚至已經在Vista 64位機器上成功編譯過,並且運行正常。它只是在Windows 7上進行編譯,然後在錯誤發生的任何其他機器上運行。
這裏是我的機器上運行CompChecker結果:
註冊信息:ADODB.Connection具有GUID HKEY_CLASSES_ROOT \ CLSID {} 00000514-0000-0010-8000-00AA006D2EA4
InprocServer32 is%CommonProgramFiles%\ System \ ado \ msado15.dll
我有完全相同的問題。這用於工作,必須是MS更新或其他東西! – 2011-05-04 13:44:23
@Mark給這個問題upvote然後! – 2011-05-04 14:59:10
奇怪的是,它可以在Vista上運行,而不是在Windows 7上運行。你是否嘗試在禁用UAC的情況下運行它,或者使用明確的「以管理員身份運行」運行? – 2011-05-04 21:46:18