FreePascal (FPC) a Lazarus > Obecné

Error - libmysql.dll

(1/3) > >>

Fantom007:
Na 64-bitových Windows 10 mám nainstalovánu MariaDB 10.4.6 prostřednictvím XAMPP (včetně Apache) a otevírání databází i sql dotazy na nich správně fungují. Napsal jsem si jednoduchoučký program (podle příkladů v internetu) na otevření Sql databáze (MariaDB), vyplnil potřebné vazby mezi komponentami včetně názvu otevírané databáze (vše jsem zkoušel i dynamicky) a jako připojovací komponentu jsem použil TMySQL57Connection. Po nastavení položky Connected (zkoušel jsem i dynamicky - stejné) následuje chybová hláška 'Can not load default MySQL Library ("libmysql.dll" or "libmysql.dll"). Check your installation'. Protože jsou komponenty propojené, stejná hláška se objeví i při SQLTransaction.Active nebo SQLQuery.Open. Z oficiálního zdroje jsem si stáhnul archiv s knihovnou libmysql.dll a tu zkopíroval jak do C:\Windows\System32, tak do adresáře s přeloženým exe programem (Lazarus i Target projektu jsou nastaveny jako 64-bit), ale se stejným výsledkem. Nepomohlo ani přejmenování knihovny na libmariadb.dll. Prosím tedy o pomoc, už jsem bezvýsledně strávil hledáním po internetu spoustu hodin.

Stanislav Hruška:
Figu o tom viem, ale z iných diskusií som sa dozvedel, že sa často jedná o boj medzi 32 a 64 bit knižnicami. Pod Win64 32 dll sa spustiť nedá. Nemáš tento problém?

Fantom007:
Používám Windows 64bit, Lazarus 64bit, při překladu Cílový OS je nastaven na Win64, Cílová rodina na CPU x86_64 (nepomůže ani sestavení Win32 a i386), zmíněná knihovna je z balíku mysql-8.0.23-winx64. Neboli vše mám 64-bitové.

Fantom007:
a) Stačí jen přidat knihovnu libmysql.dll do \Windows\System32 (nebo k exe přeloženého programu)? Nemusí se knihovna zaregistrovat příkazem regsvr32 libmysql.dll? (to mi taky nešlo).

b) Do .DatabaseName se vyplňuje název databáze nebo název jedné konkrétní tabulky v ní obsažené? V Delphi Paradoxu byly pojmy Tabulka a Databáze identické (zkoušel jsem obojí - bez výsledku).

c) Je zvláštní, že se nikde na disku uvedená knihovna nevyskytuje, ačkoliv jsem nainstaloval XAMPP a databáze s tabulkou mi jde v localhost\phpmyadmin vytvořit, vyplnit i editovat.

d) Zkusil jsem stáhnout i libmariadb.dll, ale bez výsledku.

pf1957:
Kdysi býval problém s tím, že se u každé verze Parodie jmenovala ta klientská .dll jinak tj. Ve jménu bývalo čislo verze jako sufix. A řešením bylo buď explicitně zadat jméno .dll nebo .dll zkopírovat s výchozím jménem libmysql.dll a soubor dát do adresáře k .exe
 Ale s Parodii jsem zkoušel něco dělat před 10+ lety

Jinak si vždycky můžeš spustit filé monitor a podívat se, po cem to satra

Navigace

[0] Seznam témat

[#] Další strana

Přejít na plnou verzi