我正在嘗試移動網絡服務器。我們的應用程序(善良)在1998年寫回(我認爲)在VB6中。我已經在我們的新服務器上工作了(Windows Server 2008 R2 64位)。但是,當我在我的機器上獲取源代碼(Windows 7 64位)並將該exe文件傳輸到服務器時,應用程序在嘗試連接到具有以下錯誤的數據庫時崩潰:「Error 430(Class does not support自動化或不支持預期的接口)「VB6應用程序在重新編譯後無法在Server 2008上運行
該項目引用Microsoft Activex數據對象2.8庫。錯誤是
Set conn = New adodb.Connection
所以,它並不是實際嘗試連接到數據庫,而是試圖創建對象時純粹爆炸。
任何人都有這種錯誤的經驗嗎?或者對我有什麼建議?谷歌有幾種可能性,但沒有一種可能。他們大多數都與公共控制和使用「項目兼容性」 - 但我的應用程序運行「無人蔘與執行」,所以我不能選擇(它在項目屬性中完全禁用)。
您是否嘗試製作崩潰的最小項目示例?你如何聲明'conn'? – MicSim 2011-03-29 06:33:59
對不起MicSim - 今晚我回家時我會試試這個(我的9-5工作不是問題,所以代碼只在我的家用機器上)。但我相對肯定conn被聲明爲Dim conn ADODB.Connection(早期綁定,不遲到,今晚我會嘗試晚期綁定)。 – 2011-03-29 14:21:18
延遲綁定確實解決了這個問題。就編碼而言,它並不是最優的,但是,嘿,至少它是有效的。 – 2011-04-01 15:36:16