Einzelnen Beitrag anzeigen

Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.272 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: Service-EXE ist in Windows Audio geöffnet?

  Alt 11. Dez 2015, 14:20
Application.Terminate; (das Application aus der Service-Unit und nicht das aus Forms)
Vcl.SvcMgr.TServiceApplication.Terminate gibts bei mir nicht (XE4)

EDIT: Ich habe mal folgendes eingefügt:
Delphi-Quellcode:
procedure TMyService.Kill;
const
  SERVICE_CONTROL_STOP = $00000001;
begin
  ServiceController(SERVICE_CONTROL_STOP);
end;
Wenn jetzt während der Initialisierung eine Exception auftritt sagt mir der Dienstmanager, dass der Dienst gestartet und dann angehalten wurde. Der Effekt, dass unter SvHost weiterhin ein "Restprozess" verbleibt, hat sich dadurch leider aber nicht verändert.

Noch ein EDIT: Ich habs rausgefunden! Problem liegt ganz woanders. Ich habe für die Ereignisanzeige eine MessageTable direkt in die Exe von meinem Dienst einkompiliert und verweise in der Registry als MessageFile darauf. Wenn ich nun die Ereignisanzeige öffne, baut diese ein Handle zum Image (EXE-Datei) auf und lässt es so lange offen bis ich die Ereignisanzeige wieder schließe. Problem erkannt, Gefahr gebannt: Ich kompiliere mir jetzt als MessageFile eine separate DLL und gut ist.

Am Rande bemerkt finde ich die Methodik, Einträge ins Eventlog zu schreiben, ziemlich abartig kompliziert. Wer auch immer sich das so für NT 3.5 damals ausgedacht hat, er muss ein selbstverliebter Theoretiker gewesen sein
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden

Geändert von Codehunter (11. Dez 2015 um 15:38 Uhr)
  Mit Zitat antworten Zitat