Einzelnen Beitrag anzeigen

Benutzerbild von Master_RC
Master_RC

Registriert seit: 18. Jan 2005
459 Beiträge
 
Delphi 7 Enterprise
 
#1

Kann nicht zur MySQL verbinden :(

  Alt 19. Mär 2006, 01:03
hi leutz!

Ich versuche per Unit "mysql" wie folgt zu verbinden, was aber nicht klappt...

Die Funktion hab ich in eine DLL gepackt:

Delphi-Quellcode:
function ConnectToDB(DatabaseVar:PMySQL; host:PChar): boolean; stdcall;
var user,pass,db:PChar;
begin
  user := 'root';
  pass := nil;
  db := 'darkage';

  DatabaseVar := mysql_init(nil);
  if DatabaseVar = nil then
  begin
    //MessageDlg('Nicht genug freier Speicher, um Verbindungsdeskriptor zu initialisieren',mtError,[mbOK],0);
    result := false;
    Exit;
  end;

  // anschließend wird die Verbindung hergestellt
  if mysql_real_connect(DatabaseVar, host, user, pass, db, 3306, nil, 0) = nil then
  begin
    // MessageDlg('Die Verbindung konnte nicht hergestellt werden.'+#10#13#10#13+' Ursache: ' + mysql_error(_myCon)+#10#13#10#13+'Es kann sein, dass der DarkAge-Server zur Zeit nicht online ist. Meist ist das so, wenn Wartungsarbeiten im Laufen sind.'+#10#13+'Falls dieses Problem jedoch auftritt, wenn dies nicht der Fall ist und auch keine entsprechene Nachricht der Serveradministratoren gegeben wurde, dann kontaktieren Sie diesen, um Ihren Fehler behen zu können.'+#10#13+'Sinnvoll ist daher auch, im entsprechenden Forum zu suchen, ob andere Spieler dieselben Probleme haben.',mtError,[mbOK],0);
    result := false;
    Exit;
  end else begin
    // Die Verbindung steht!
    result := true;
  end;
end;
Wenn ich die Funktion ausführe im Programm (Parameter host = '192.168.100.222', also meine IP), dann will er nit.
MySQL-Server läuft, DB steht, aber nichts....

//EDIT:
Mmmh...
Also:
Var host = '192.168.100.222';

Wenn ich dann so mach:
ConnectToDB(_myCon,host) --- keine Verbindung
ConnectToDB(_myCon,'127.0.0.1') --- klappt...
ConnectToDB(_myCon,'localhost') --- klappt...

ABER WARUM???
Ein Volk ist nur soviel wert, wie es dessen Toten ehrt.
  Mit Zitat antworten Zitat