Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Mit Service auf Desktop zeichnen (https://www.delphipraxis.net/76522-mit-service-auf-desktop-zeichnen.html)

gsh 5. Sep 2006 20:14


Mit Service auf Desktop zeichnen
 
Hi DPler

Ich stehe vor einem großen Problem. Ich hab einen Service geschrieben und mit dem möchte jetzt eine andere Exe starten, damit ich etwas auf den Desktop zeichnen kann, weil das aus dem Service heraus (wenn interactive = false) imho nicht geht. Deshalb hab ich mir gedacht, ich mache dafür eine eigene Exe die des für mich erledigt. Da der Service aber unter dem SYSTEM Account ausgeführt wird (was er auch soll), dann wird die mit shellexcute aufgerufene exe auch als SYSTEM ausgeführt und somit sieht man nichts davon. An des RunAs hab ich auch schon gedacht, aber da weiß ich nicht das Benutzer Passwort dafür.

Ich hab mir drei mögliche Wege überlegt. Welcher ist der beste und wie kann ich ihn erreichen?

1. Service kann doch auf den Desktop zugreifen und etwas auf den desktop zeichen, ohne Interactive und somit auch ohne die andere Exe.
2. Ich kann die exe anderes öffnen des sie zwar unter dem aktuell eingelogten user ausgeführt wird, aber ohne des Passwort von ihm zu haben.
3. Die Exe dazu bringen auch vom SYSTEM konto aus auf den Desktop was zeichen


Für weitere Vörschläge oder Lösungswege bin ich natürlich offen :zwinker:

Luckie 5. Sep 2006 20:38

Re: Mit Service auf Desktop zeichnen
 
Ruf in der Exe mal MSDN-Library durchsuchenSwitchDesktop auf, eventuell geht das damit.

gsh 5. Sep 2006 23:43

Re: Mit Service auf Desktop zeichnen
 
k des wäre möglichkeit nummer drei
ich hab mir des jetzt mal in der in der MSDN angeschaut und auch versucht einzubauen nur brauch des da: "HDESK hDesktop"
dieses müsste ich zwar mit OpenDesktop bekommen aber da überfordern mich die parameter total

außerdem kann es sein das ich dann einen ganz anderen desktop sehe und wenn ich des programm beende und des nicht mehr zurückstelle ich nicht mehr zum alten zurück komme?


irgendwie wär mir die 1 Lösung lieber ... naja wenn es nicht geht dann gehts nicht aber wenn es geht dann bin ich für die erste :mrgreen:

Vjay 6. Sep 2006 00:15

Re: Mit Service auf Desktop zeichnen
 
Soweit ich weiss muss der User selber die Exe starten (Autostart), bzw. du tust es für ihn mit seinem Passwort.

Gibbet übrigens nen lustigen Artikel zu: http://blogs.msdn.com/oldnewthing/ar...22/712677.aspx

SirThornberry 6. Sep 2006 06:12

Re: Mit Service auf Desktop zeichnen
 
Eventuell genügt es ja schon bei CreateProcess den Desktop anzugeben auf dem dein Zweitprogramm laufen soll

gsh 6. Sep 2006 10:08

Re: Mit Service auf Desktop zeichnen
 
Zitat:

Zitat von Vjay
Soweit ich weiss muss der User selber die Exe starten (Autostart), bzw. du tust es für ihn mit seinem Passwort.

An des hab ich auch schon gedacht aber des fällt flach da die exe nur unter bestimmten umständenn gestarten werden soll, und mit seinem passwort hab ich gesagt geht nicht da ich nicht sein passwort kenne. Oder schaut des gut aus?: Beim Setup "Please enter your Admin Password"

Zitat:

Zitat von SirThornberry
Eventuell genügt es ja schon bei CreateProcess den Desktop anzugeben auf dem dein Zweitprogramm laufen soll

Hmm aber da hab ich wieder des Problem wie vorne beschrieben:
Zitat:

Zitat von ich
außerdem kann es sein das ich dann einen ganz anderen desktop sehe und wenn ich des programm beende und des nicht mehr zurückstelle ich nicht mehr zum alten zurück komme?


gsh 7. Sep 2006 16:16

Re: Mit Service auf Desktop zeichnen
 
*push*

Luckie 7. Sep 2006 17:23

Re: Mit Service auf Desktop zeichnen
 
Bist du mal dem Link von Vjay gefolgt? Es gibt nicht DEN Desktop. Seit es unter Windows XP das FastUserSwitching gibt, können mehrere Benutzer einen interaktiven Desktop haben. Auf welchen willst du denn dann zeichnen? Auf alle? Auf einen bestimmten?

gsh 7. Sep 2006 20:27

Re: Mit Service auf Desktop zeichnen
 
Also da diese Computer in der Domäne hängen gibt es imho nur einen. Aber im zweifelsfall auf alle oder auf den aktiven dews ist in meinem fall egal :zwinker:

gsh 9. Sep 2006 13:03

Re: Mit Service auf Desktop zeichnen
 
*push*


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:14 Uhr.
Seite 1 von 4  1 23     Letzte »    

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