Entwickler-Ecke

Internet / Netzwerk - Win32-Service: TCP/IP-Verbindung beim Systemstart


JDF - Fr 20.03.09 11:31
Titel: Win32-Service: TCP/IP-Verbindung beim Systemstart
Hallo,

ich habe ein Problem mit meinem Win32-Service.

Der Service steht auf Autostart und soll nach einem gewissen Timeout eine Verbindung zum Server herstellen und einen Datenabgleich durchführen.

Auf WinXP ist das kein Problem.
Auf WinNT und Win2k kann keine Verbindung aufgebaut werden. Wenn ich aber manuell einen Ping zum Server schicke, klappt anschließend die TCP/IP-Verbindung des Service zum Server.
Der Ping initialisiert irgendetwas auf den Maschinen.

Kann mir jemand mit einen Tipp aus der Win32Api-Ecke weiterhelfen, damit ich nicht über CreateProcess(..) den Ping auslösen muss?

Besten Dank

Jürgen


Narses - Fr 20.03.09 12:24

Moin und :welcome: im Forum!

user profile iconJDF hat folgendes geschrieben Zum zitierten Posting springen:
Der Service steht auf Autostart und soll nach einem gewissen Timeout eine Verbindung zum Server herstellen und einen Datenabgleich durchführen.
[...]
Der Ping initialisiert irgendetwas auf den Maschinen.
Ein Ping initialisiert eigentlich nix :gruebel: allerdings könnte dein Service bereits gestartet sein, wenn die WSA noch nicht "ansprechbar" ist, weil Services asynchron starten. :nixweiss:

Warte doch einfach nach dem Start des Service 1-2 Minuten, bis zu auf das Netzwerk zugreifst. Ansonsten kannst du auch mal einen API-Ping [http://www.delphi-forum.de/topic_ICMPEchoAPI+quotPingquot+WrapperUnit_53259.html] probieren, um die Erreichbarkeit des Servers abzufragen. :idea:

cu
Narses


JDF - Fr 20.03.09 12:56

Hallo Narses !

Herzlichen Dank für die schnelle Hilfe.

Das API-Ping klappt wunderbar.


Jürgen