AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

MySQL-Header

Ein Thema von himitsu · begonnen am 28. Jul 2010 · letzter Beitrag vom 6. Aug 2010
 
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.418 Beiträge
 
Delphi 12 Athens
 
#5

AW: MySQL-Header

  Alt 2. Aug 2010, 20:37
Es läuft endlich

anscheinend muß man urplötzlich

mysql_server_init/mysql_library_init und mysql_thread_init aufrufen

wobei angeglich das Server_Init doch nur für den Embedded-Server nötig sein sollte und irgendwie läßt dieses sich auch nicht parameterlos aufrufen, so wie man es überall sieht.

Ansonsten soll mysql_server_init eigentlich (laut Dokumentation) intern von mysql_init aufgerufen werden, wenn es noch nicht wurde ... schon komisch das alles.

Wenn ich es parameterlos versuche, so wie z.B. hier
Code:
(mysql_library_init(0, NULL, NULL))
Quelle: http://dev.mysql.com/doc/refman/5.5/...rary-init.html
dann läuft dieses in eine Assert-Exception, ala Parameter erwartet


im Anhang 3 Versionen, welche nun endlich lauffähig sind
- die normalen Header, wie man sie auf mysql.com findet (statisch verlinkt)
- dann alles in Klassen (Records) verpackt, statisch verlinkt und Vieles als direkte Verbindung von der Record-Methode zur DLL-Funktion
- und dann nochmal alles komplett mit UTF8Strings/AnsiStrings dynamisch verlinkt und ebenfalls mit möglichst direkten Verknüpfungen.

> bei Input-Parametern als Ansi/UTF8 wird direkt weitergeleitet (das ist intern ja kompatibel zu PAnsiChar)
> bei Ausgabeparametern und bei Results als Ansi/UTF8 wurde nur noch eine Kopieroperation PChar->String eingefügt.

die nötigen libmysql(d).dll's sind oben ja schonmal verlinkt

und jetzt muß ich nur noch rausbekommen, was beim Embedded-Server schiefläuft ... Initialisieren läßt er sich aber schonmal

PS: sind hier C++-Profies?
Aktuell hab ich nur den Embedded-Server als DLL, aber man kann ihn auch direkt in die EXE verlinken ... leider nur bei C++.

Drum wäre die Frage: Könnte man das eigentlich auch irgendwie als OBJ kompilieren und dann doch direkt einbinden?
(so wie z.B. die ZLib)

Man benötigt ja eigentlich nur den "MySQL Community Server" und linke/kompiliere dann den Code statt gegen die mysql.h gegen die mysqld.h (oder irgendwie so).

Und bevor nochmal einer meint, das würde gegen die MySQL-Lizenzpolitik verstoßen:
die nutzen es auch > http://www.mysql.com/customers/embedded/
Angehängte Dateien
Dateityp: 7z MySQL.7z (43,3 KB, 6x aufgerufen)
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 2. Aug 2010 um 20:48 Uhr)
  Mit Zitat antworten Zitat
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:56 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz