Autor Beitrag
freedy
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 403
Erhaltene Danke: 1

Winows 7
Delphi XE
BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1206
Erhaltene Danke: 1



BeitragVerfasst: 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 403
Erhaltene Danke: 1

Winows 7
Delphi XE
BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1206
Erhaltene Danke: 1



BeitragVerfasst: 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 403
Erhaltene Danke: 1

Winows 7
Delphi XE
BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1206
Erhaltene Danke: 1



BeitragVerfasst: 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 403
Erhaltene Danke: 1

Winows 7
Delphi XE
BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2596

Win7
D2006 WIN32, .NET (C#)
BeitragVerfasst: 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? :roll:

Cu,
Udontknow
freedy Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 403
Erhaltene Danke: 1

Winows 7
Delphi XE
BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2596

Win7
D2006 WIN32, .NET (C#)
BeitragVerfasst: 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? :wink:

Cu,
Udontknow
freedy Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 403
Erhaltene Danke: 1

Winows 7
Delphi XE
BeitragVerfasst: Di 08.02.05 00:06 
Jupp, danke. Klappt so.

Gruß
freedy