Hossa, Klotzkopp und Manfred,
ersteinmal herzlichen Dank für die prompte Reaktion.
Also zum Code:
Es soll vom Dienst ein paar Clients ("client.exe")gestartet werden die jeweils an unterschiedlichen Ports lauschen, Prinzip:
OnStart(...)
...
WinExec("client.exe 5678", SW_HIDE);
WinExec("client.exe 7689", SW_HIDE);
WinExec("client.exe 4239", SW_HIDE);
Dabei wird dann bei jedem Aufruf eine Message generiert, in der Art "Access denied...". Dies wird sicherlich vom Service-Prozess ausgelöst, weil jeder Aufruf auf einen Rückkehrcode bis zum Time-Out wartet. Nach Quittierung der Message wird anstandslos der nächste Aufruf abgearbeitet, bis das Spielchen wie oben sich wiederholt.
Nun möchte ich natürlich, daß WinExec nicht wartet sondern hintereinander die Aufrufe abarbeitet.
Dabei bin ich inzwischen auch auf Manfreds Quelle gestoßen und probiere es mit der GetMessage() im Code der "client.exe". Nach dem Prinzip:
LPMSG lpMsg;
GetMessage( lpMsg, NULL, 0, 0);
Aber da heult das System darüber, daß lpMsg in der 2.Zeile nicht definiert ist?
Wenn das Problem mit CreateProcess() besser sich lösen läßt, wäre es prima, wenn Manfred einen kleinen Beispielcode hätte. Ich sehe leider noch nicht so richtig in der MSDN durch; dem Befehl ist auch kein Beispiel beigefügt. Oh diese Parameterliste, what is hi meaning??? ;-)
Gruß
ono