Autor |
Beitrag |
freedy
      
Beiträge: 403
Erhaltene Danke: 1
Winows 7
Delphi XE
|
Verfasst: Fr 04.02.05 12:33
Hallo,
ich habe viel gesucht, aber keinen passenden Thread gefunden.
Ich suche eine Möglichkeit, zu überprüfen, ob ein SQL-Server (lokal oder im Netzwerk) läuft, bevor ich mit meinen ZEOS-Komponenten (Ver. 6.5) eine Verbindung aufbaue.
Am besten wäre sogar, dass ich überprüfen kann, auf welchem Rechner der Server läuft. Ist das überhaupt möglich?
Geht das über die Port-Abfrage? Wenn ja, wie macht man das?
Gruß
freedy
|
|
neojones
      
Beiträge: 1206
Erhaltene Danke: 1
|
Verfasst: Fr 04.02.05 12:48
Nein, geht nicht.
Das einzige was Du schauen kannst is, ob der Port 3306 offen ist aber das ist bei Rechnern in einem Netzwerk normal.
_________________ Ha! Es compiliert! Wir können ausliefern!
|
|
freedy 
      
Beiträge: 403
Erhaltene Danke: 1
Winows 7
Delphi XE
|
Verfasst: Fr 04.02.05 13:15
Hm... na gut. Dachte, dass das vielleicht eine Möglichkeit wäre. Dann brauche ich da ja nicht weiter herumexperimentieren.
Zur Zeit speichere ich meine Zugangsdaten verschlüsselt in einer INI-Datei.
Wenn der SQL-Server dann mal nicht läuft, weil der Rechner, auf dem er installiert ist, ausgeschaltet ist, bekomme ich eine Fehlermeldung und das Programm beendet sich.
ZEOS bietet, soweit ich gesehen habe, für diesen Fall keine Optionen bei TZConnection an. Was kann ich also tun?
Gruß
freedy
|
|
neojones
      
Beiträge: 1206
Erhaltene Danke: 1
|
Verfasst: Fr 04.02.05 13:18
Das ganze in Try ... except klammer könnte helfen.
Viele Grüße,
Matthias
_________________ Ha! Es compiliert! Wir können ausliefern!
|
|
freedy 
      
Beiträge: 403
Erhaltene Danke: 1
Winows 7
Delphi XE
|
Verfasst: Fr 04.02.05 13:25
Try... except. hilft immer. Trotzdem schmiert er mir ab.
Und das finde ich merkwürdig.
Werde den Code nochmal debuggen.
Gruß
Michael
PS: Trotzdem bleibt die Frage, wie ich prüfen kann, ob ein SQL-Server läuft.
|
|
neojones
      
Beiträge: 1206
Erhaltene Danke: 1
|
Verfasst: Fr 04.02.05 13:31
In der IDE wird das Try...except nicht berücksichtigt. Liegts evtl daran?
_________________ Ha! Es compiliert! Wir können ausliefern!
|
|
freedy 
      
Beiträge: 403
Erhaltene Danke: 1
Winows 7
Delphi XE
|
Verfasst: Fr 04.02.05 13:37
Ich habe den Fehler gefunden. Jedenfalls den, warum er mir abschmiert. Man sollte, wenn man einen eigenen EventHandler für OnExcept schreibt, auch darauf achten, was man schreibt. Wenn da natürlich Application.Terminate; drin steht... kein Wunder.
Das löst aber mein eigentliches Problem noch nicht. 
|
|
Udontknow
      
Beiträge: 2596
Win7
D2006 WIN32, .NET (C#)
|
Verfasst: Fr 04.02.05 15:21
Was genau ist denn das Problem?
Wenn du die Verbindung aufbaust, bekommst du eine Exception, falls der Server nicht läuft. Na und? Oder versteh ich da was nicht?
Cu,
Udontknow
|
|
freedy 
      
Beiträge: 403
Erhaltene Danke: 1
Winows 7
Delphi XE
|
Verfasst: Fr 04.02.05 15:32
Ich habe folgende Aufgabenstellung:
In einem Netzwerk sollen verschiedene Rechner auf einen MySQL-Server zugreifen. Es besteht die Möglichkeit, dass der Server ausgeschaltet ist. Daher soll geprüft werden, ob der MySQL-Server überhaupt läuft.
Sehr komfortabel wäre es, wenn ich lokalisieren könnte, auf welchem Rechner der Server läuft. Doch das scheint ja nicht zu gehen.
Gruß
freedy
|
|
Udontknow
      
Beiträge: 2596
Win7
D2006 WIN32, .NET (C#)
|
Verfasst: Fr 04.02.05 16:24
Wenn ich keine Verbindung mit den Komponenten aufbauen kann, ergo eine Exception ala "Socketfehler 10061" ausgelöst wird, könnte man das doch als hinreichendes Indiz werten, daß der Server nicht läuft, oder?
Cu,
Udontknow
|
|
freedy 
      
Beiträge: 403
Erhaltene Danke: 1
Winows 7
Delphi XE
|
Verfasst: Di 08.02.05 00:06
Jupp, danke. Klappt so.
Gruß
freedy
|
|