| Autor |
Beitrag |
butterkeks
      
Beiträge: 56
Win XP, Win 7
Delphi 2007
|
Verfasst: Di 15.06.10 16:25
Hallo leute,
ich hab ein Problem mit meinem Programm das ich alleine nicht behoben bekomme.
Mein Programm benutzt eine TSQLConnection zum verbinden zu einer MYSql DB und auf dem Rechner wo Delphi läuft, klappt das verbinden auch ohne Probleme, aber sobalt ich das Programm auf einem fremden Rechner starten will bekomme ich eine Fehlermeldung:
"Fehler beim Lesen von verbindung.DriverName: Verbindungsdateien wurden im Anwendungsverzeichnis (C:\Dokumente und Einstellungen\XXX\XXX) und in der Systemregistrierung (\Software\CodeGear\BDS\6.0\dbExpress) nicht gefunden.
"
Ich habe schon die von mir eingesetzte libmysql.dll in das Programm und Systemverzeichnis eingefügt aber ohne Erfolg.
Kann mir jemand sagen was es damit auf sich hat?
Ps.: ich vergaß zu erwähnen das ich MadExcept benutze falls jemand die Fehlermeldung komisch vorkommt.
_________________ Dear lord,
please grant me the ability to punch people in the face over Standard TCP/IP!
|
|
ALF
      
Beiträge: 1085
Erhaltene Danke: 53
WinXP, Win7, Win10
Delphi 7 Enterprise, XE
|
Verfasst: Di 15.06.10 16:50
Bin mir jetzt nicht ganz sicher, glaube aber zu wissen das diese dll nicht im Systemverzeichnis von Windows liegt, sondern im Verzeichnis von Mysql bzw.im Verzeichnis des Progs was dies benötigt (z.B Apache/bin)!
In solchen transportablen Fällen, empfehle ich immer eine Configdatei, um dies manuel nachtragen zu können.
Dies gilt z.B. auch für die DB, kommt auch oft vor das sie nicht im selben Verzeichnis oder sogar im anderen Lw liegt.
Solch ein ähnlichen Fall gab es vor kurzem auch schon hier
Gruss Alf
_________________ Wenn jeder alles kann oder wüsste und keiner hätt' ne Frage mehr, omg, währe dieses Forum leer!
|
|
butterkeks 
      
Beiträge: 56
Win XP, Win 7
Delphi 2007
|
Verfasst: Di 15.06.10 16:59
Ja im Prinzip wäre ja mein Programm das, welches diese Datei benötigt, da es ja keinen Apache Server oder dergleichen gibt.
Mein Programm soll lediglich zu einer fest installierten MYSQL Installation verbinden und dann Datenbankabfragen durchführen.
Und nun habe ich halt das Problem das mir irgendwas auf dem anderen Rechner fehlt.
Da ich die libmysql.dll schon im System Ordner habe und auch im Anwendungsverzeichnis kann es DIE schonmal nicht sein denke ich...nur welche ist es dann?
hier nochmal die details zu meiner TSQLConnection:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| object verbindung: TSQLConnection ConnectionName = 'MySQLConnection' DriverName = 'MySQL' GetDriverFunc = 'getSQLDriverMYSQL' LibraryName = 'dbxmys.dll' Params.Strings = ( 'DriverName=MySQL' 'HostName=127.0.0.1' 'Database=xxx' 'User_Name=xxx' 'BlobSize=-1' 'Password=xxx') VendorLib = 'libmysql.dll' AfterConnect = verbindungAfterConnect AfterDisconnect = verbindungAfterDisconnect BeforeConnect = verbindungBeforeConnect |
_________________ Dear lord,
please grant me the ability to punch people in the face over Standard TCP/IP!
|
|
ALF
      
Beiträge: 1085
Erhaltene Danke: 53
WinXP, Win7, Win10
Delphi 7 Enterprise, XE
|
Verfasst: Di 15.06.10 17:19
Man, hab ich mich wieder blöd ausgedrückt  oder ich hab dich falsch verstanden!
Du bist mit deinem in Delphi erstellten Programm auf einem anderen Rechner gegangen!?
Alleine das sagt schon, das ja der Username, also C:\Dokumente....\hiermeinusername\...\ usw. nicht stimmt!
Demzufolge auch das nicht finden kann was für Delphi benötigt wird z.B. die DB.
Egal wie rum das nun passiert ist, jedenfals stimmen die Pfade nicht worauf das Programm zugreift!
Darum ja auch der Hinweis... CONFIGDATEI für sowas, um es transportabel zu machen!
Gruss Alf
P.S. das mit Apache war nur als Beispiel gedacht!!
_________________ Wenn jeder alles kann oder wüsste und keiner hätt' ne Frage mehr, omg, währe dieses Forum leer!
Zuletzt bearbeitet von ALF am Di 15.06.10 17:25, insgesamt 1-mal bearbeitet
|
|
Xentar
      
Beiträge: 2077
Erhaltene Danke: 2
Win XP
Delphi 5 Ent., Delphi 2007 Prof
|
Verfasst: Di 15.06.10 17:23
Hast du auf diesem anderen Rechner denn MySQL installiert, und auch die Datenbank angelegt?
_________________ PROGRAMMER: A device for converting coffee into software.
|
|
butterkeks 
      
Beiträge: 56
Win XP, Win 7
Delphi 2007
|
Verfasst: Di 15.06.10 17:29
Ja ist alles drauf und auch erreichbar. Es sind ja auch schon Daten in der DB von anderen Programmen (nicht von mir geschrieben).
Also wie gesagt ich glaube nicht das es daran liegt das es MYSQL nicht findet...ich glaube eher das mein Programm irgendwas nicht findet um überhaupt eine Verbindung aufbauen zu können.
Sonst würde ja auch das Programm starten und dann ne Fehlermeldung zeigen wenn ich zur Datenbank connecten will.
So weit komm ich aber gar nicht.
@ALF: JA ich bin mit meinem Prog auf nen anderen Rechner gegangen und ich hab das Programm zum ersten testen auf dem Dektop deponiert, daher auch der "C:\Dokumente und einstellungen\.." Pfad...das sollte meinem Prog aber vollkommen egal sein.
_________________ Dear lord,
please grant me the ability to punch people in the face over Standard TCP/IP!
Zuletzt bearbeitet von butterkeks am Di 15.06.10 17:34, insgesamt 2-mal bearbeitet
|
|
ZeitGeist87
      
Beiträge: 1593
Erhaltene Danke: 20
Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
|
Verfasst: Di 15.06.10 17:29
Nebensächlich: Bei portablen Anwendungen setze ich auf SQLite
_________________ Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
|
|
butterkeks 
      
Beiträge: 56
Win XP, Win 7
Delphi 2007
|
Verfasst: Di 15.06.10 17:30
Ich persönlich würde auch nit unbedingt MYSQL nehmen, aber der Rechner und die Datenbank sind vorgegeben und die darf ich auch nicht einfach ändern...
Ich muss halt mein Programm zum funktionieren bringen.
_________________ Dear lord,
please grant me the ability to punch people in the face over Standard TCP/IP!
|
|
ALF
      
Beiträge: 1085
Erhaltene Danke: 53
WinXP, Win7, Win10
Delphi 7 Enterprise, XE
|
Verfasst: Di 15.06.10 17:33
butterkeks hat folgendes geschrieben : | | ich glaube eher das mein Programm irgendwas nicht findet um überhaupt eine Verbindung aufbauen zu können. |
kann es sein das Du irgend was von Delphi nicht mit eingebunden/compiliert hast um es transportabel zu machen?
_________________ Wenn jeder alles kann oder wüsste und keiner hätt' ne Frage mehr, omg, währe dieses Forum leer!
|
|
butterkeks 
      
Beiträge: 56
Win XP, Win 7
Delphi 2007
|
Verfasst: Di 15.06.10 17:36
Wenn ich das mal wüsste...
Also Compilieren tut er einwandfrei...und auf dem Rechner wo ich an dem Programm arbeite, startet es auch ganz normal und verbindet zu der DB die dort installiert ist.
Es geht dort also alles optimal.
Nur sobalt ich auf den anderen Rechner gehe, startet es nit mehr...
_________________ Dear lord,
please grant me the ability to punch people in the face over Standard TCP/IP!
|
|
ALF
      
Beiträge: 1085
Erhaltene Danke: 53
WinXP, Win7, Win10
Delphi 7 Enterprise, XE
|
Verfasst: Di 15.06.10 17:38
Was ist mit dieser 'dbxmys.dll'
Gruss Alf
_________________ Wenn jeder alles kann oder wüsste und keiner hätt' ne Frage mehr, omg, währe dieses Forum leer!
|
|
butterkeks 
      
Beiträge: 56
Win XP, Win 7
Delphi 2007
|
Verfasst: Do 17.06.10 08:46
Ich habe jetzt das ganze nochmal auf meinem Notebook mit Windows 7 versucht und siehe da, es geht...
Aber auch mit der dbxmys.dll auf dem anderen Rechner kein erfolg.
Gibt es eventuell irgendwelche MYSQL treiber die bei Windows XP nicht vorhanden sein könnten?
_________________ Dear lord,
please grant me the ability to punch people in the face over Standard TCP/IP!
|
|
ALF
      
Beiträge: 1085
Erhaltene Danke: 53
WinXP, Win7, Win10
Delphi 7 Enterprise, XE
|
Verfasst: Do 17.06.10 11:02
butterkeks hat folgendes geschrieben : | | Ich habe jetzt das ganze nochmal auf meinem Notebook mit Windows 7 versucht und siehe da, es geht... |
Hast Du da Delphi installiert oder nur dbExpress von CodeGear!
butterkeks hat folgendes geschrieben : | | "Fehler beim Lesen von verbindung.DriverName: Verbindungsdateien wurden im Anwendungsverzeichnis (C:\Dokumente und Einstellungen\XXX\XXX) und in der Systemregistrierung (\Software\CodeGear\BDS\6.0\dbExpress) nicht gefunden. |
Also wenn Du sagst das MYSQL ordnungsgemäß auf dem Fremdrechner installiert wurde, ok.
Dann befindet sich aber die DB auch im Verzeichnis von MYSQL im allgemeinem, wenn man damit eine DB erstellt!
Aber was ist mit der DB selbst, ist dies denn die selbe ??? Denn der Eintrag ist ja von deinem Rechner und nicht vom Fremdrechner.
Besser gesagt wird die DB so gesucht!
ansonsten wüsste ich auch nicht mehr weiter.
Gruss Alf
_________________ Wenn jeder alles kann oder wüsste und keiner hätt' ne Frage mehr, omg, währe dieses Forum leer!
|
|
butterkeks 
      
Beiträge: 56
Win XP, Win 7
Delphi 2007
|
Verfasst: Mo 21.06.10 11:37
So habs hinbekommen...is mir zwar vollkommen unklar wie das sein kann, aber ich musste Delphi auf dem anderen Rechner installieren weil dem Programm anscheinend die DBExpress daten fehlten. o.O
"Schön beschissen gebastelt" sag ich dazu nur...jetz muss man das komplette Datenbanksystem mit auf den anderen Rechner installieren...
Trotzdem ein Danke an alle die geholfen haben^^
_________________ Dear lord,
please grant me the ability to punch people in the face over Standard TCP/IP!
|
|