Delphi XE6 on Windows 7 64bit, FireDAC cannot find libmysql.dll

Artisan picture Artisan · May 29, 2014 · Viewed 7.5k times · Source

I have a little different question from Delphi XE5 FireDAC Error: Cannot load vendor library libmysql.dll or libmysqld.dll

I'm evaluating Delphi XE6 on Windows 7 64bit, I wish to use FireDAC to connect to MySQL database.

I have downloaded libmysql.dll and install the file in C:\Windows\SYSTEM32\.

After trying to set TFDConnection.Active to true during designed time, I got error dialog as displayed below.

enter image description here

So I tried to use TFDPyhsMySQLDriverLink, I have set TFDPyhsMySQLLink.VendorLib to C:\Windows\System32\libmysql.dll, and set TFDConnection.DriverName to point to TFDPyhsMySQLLink.DriverID instead, but I got error dialog as displayed below.

enter image description here

I have tried to place libmysql.dll at C:\Windows\System32\bin but the error dialog still the same as displayed above.

Please guide me what to do to fix this problem.

Answer

Artisan picture Artisan · May 29, 2014

With carefully reading this comment and this comment

There are a few facts to fix the problem. - Delphi IDE is a 32 bit application so I need libmysql.dll (32 bit version) instead of 64 bit version. - libmysql.dll version not depending on the MySQL server itself as I used to misunderstood - C:\Windows\SysWOW64 is equivalent to C:\Windows\System32 but it's the place to store system dll for the 32 bit Application (like Delphi)

So I've placed the libmysql.dll (32 bit version) at C:\Windows\SysWOW64, finally the problem is fixed.