無論我嘗試過什麼,我都無法讓XE2通過dbExpress連接到MySQL。這個問題其實有很多面孔。首先,目標MySQL是32位或64位,這會影響MySQL安裝隨附的libmysql.dll,這似乎是誤導性的,因爲XE2 IDE是一個32位應用程序,它只接受32位DLL。所以我需要使用32位安裝libmysql.dll,把它放在Windows \ System32下(或者到項目文件夾本身),然後在我的項目中將目標編譯平臺設置爲32位(這樣它就不會嘗試使用64位dbxmys.dll,以防萬一),仍然沒有運氣。我試過的所有組合導致出現此錯誤:「DBX錯誤:驅動程序無法正確初始化。客戶端庫可能會丟失.......」Delphi XE2 dbExpress MySQL連接
任何能夠使XE2 dbExpress連接到MySQL服務器?我需要你的幫助。提前致謝。 (安裝在遠程XP 32位上)/ MySQL 5.1.54 64位(安裝在遠程XP x64上)(Windows XP 64位(具有XE2的開發平臺),MySQL 5.5.16 32位(安裝在遠程XP 32位上))兩者都試過,通過使用它們的libmysql.dlls)
我讀過一篇關於Windows \ System32和Windows \ SysWOW64的文章,但我已經嘗試了兩種方法。同樣的錯誤。我甚至將dbxmys.dll和libmysql.dll都放到項目的exe文件夾中(這應該是第一個查找DLL的地方)。看起來我還有其他東西在這裏。我注意到在數據資源管理器 - >修改連接 - >高級窗口中,通常無法在對象檢查器中看到名爲VendorLibWin64的TSQLConnection參數(以及可通過對象檢查器訪問的VendorLib),並嘗試將其手動設置再次無濟於事 –
這很難說,你做錯了什麼。你能總結一下 - 你的窗口,應用程序,libmysql.dll的位數。你在哪裏和你在做什麼。這將有助於查看錯誤或確認設置是否正確,但dbExpress失敗。 – robmil
讓我直截了當地說:當你在64位運行時,將32位dll放入system32,在32位模式下運行時,將32位dll放到sysWOW64中。這對我來說毫無意義。反過來說聽起來更合理。 – Johan