Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Dienst "wird beendet" (https://www.delphipraxis.net/137822-dienst-wird-beendet.html)

FriFra 12. Mär 2010 12:41

Re: Dienst "wird beendet"
 
Zitat:

Zitat von Luckie
Das setzt aber voraus, dass das vom Service gestartete Programm als Administrator läuft.

Da der Dienst auf dem Systemkonto läuft, läuft das von ihm gestartete Programm auch auf dem Systemkonto... da reicht die Berechtigung aus ;)

sirius 4. Mai 2010 11:50

Re: Dienst "wird beendet"
 
Ich will hier kurz noch anfügen, da ich das Problem auch grad hatte. Folgendes funktioniert zumindest:
Delphi-Quellcode:
//beide Zeilen nacheinander ausführen

PostThreadMessage(ServiceThread.ThreadID,CM_SERVICE_CONTROL_CODE, SERVICE_CONTROL_STOP,0); //hier könnte ein einfaches DoStop evtl. auch reichen
PostThreadMessage(ServiceThread.ThreadID,WM_Quit,0,0); //der ServiceThread verstrickt sich in einer Routine und bricht trotz Terminate nicht ab, wenn kein WM_Quit kommt.

himitsu 4. Mai 2010 12:10

Re: Dienst "wird beendet"
 
Zitat:

Zitat von sirius
Folgendes funktioniert zumindest:

Dieses wird von der externen Anwendung an den Service gesendet?

Wenn ja, dann sollte die Anwendung auch mindestens als Administrator gestartet sein,
denn seit Vista kann eine Anwendung Messages nur noch an Anwendngen mit maximal den selben rechten verschicken.

Also eine "User"-Anwendung kann z.B. keine Message an eine Anwendung mit "Admin"-Rechten verschicken.

sirius 4. Mai 2010 12:13

Re: Dienst "wird beendet"
 
Zitat:

Zitat von himitsu
Zitat:

Zitat von sirius
Folgendes funktioniert zumindest:

Dieses wird von der externen Anwendung an den Service gesendet?

Nö, hier gehts doch um den Service selber. Das kommt von innen.

himitsu 4. Mai 2010 12:21

Re: Dienst "wird beendet"
 
Na dann isses was Anderes.
Konnte jetzt nicht direkt erkennen wer nun Dieses oder Beitrag #7 und #8 nun sendet.
(hätte ja auch die gestartete Anwendung sein können :stupid: )


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:20 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz