![]() |
Applikation einem anderen Desktop zuweisen
Hallo
Ich habe folgendes Problem: Eine Applikation, die schon seit Jahren im Einsatz ist, soll mit durch einen geplanten Vorgang beim Systemstart gestartet werden. Da ich zu diesem Zeitpunkt noch keinen Destkop habe ( mit Software evaluiert ), wird diese App auch nicht sichtbar, sobald der Benutzer sich anmeldet. Schrittweise: 1. Geplanter Vorgang mit App und Domainuser "ar" // Win2003 u. 2008 Server 2. App startet ohne, dass sich jemand anmeldet ( z.B.Server nach Reboot ) 3. Anmeldung zu Supportzwecken mit "ar" 4. Die Applikation läuft wird aber nicht sichtbar für den Benutzer 5. Ich müsste die App abbrechen und wieder neu starten. Ist aber nicht das Ziel Wenn ich den geplanten Vorgang als SYSTEM starte, sehe ich die App zwar, habe aber auf verschiedene Bereiche der Domäne keinen Zugriff! Versuche: Ich habe als "ar" versucht, meine App der neuen WindowsStation und Desktop zuzuweisen. => kein Zugriff Ich sehe zwar alle WindowStations kann aber nicht auf deren Desktop zugreifen. Mit EnumWindowStation habe ich alle aufgelistet und dann mit OpenWindowStation versucht mich auf deren Desktop einzuklinken ( SetThreadDestkop ). Kann mir jemand weiterhelfen? Ich hätte folgende Idee: 1. Start der App mit User "ar" beim Systemstart 2. Start der ControlApp mit User "SYSTEM" beim Systemstart 3. Sobald sich jemand anmeldet und einen sichtbaren Desktop hat, soll meine ControlApp die App diesem Desktop zuweisen. So in etwa müsste es ja auch ein Virenscanner machen, oder bin ich da falsch informiert? 4. Von den Rechten her sollte "SYSTEM" das machen können. Danke im voraus Gruss Arthur |
Re: Applikation einem anderen Desktop zuweisen
Ob deine Idee bei aktiver UAC funktionieren kann :gruebel:
Schreib die Anwendung um das du einen Workerprozess ohne GUI und eine Konfig/Viewer-App mit GUI hast. Die App mit GUI verbindet sich dann z.B. per Socketverbindung mit dem Workberprozess. Der Workerprozess läuft dann immer als Dienst. So machen es viele Anwendungen mit ähnlichen Anforderungen. |
Re: Applikation einem anderen Desktop zuweisen
Hallo
Danke für die rasche Antwort. Eigentlich wollte ich genau das vermeiden. Gibt es eine Chance für meinen Ansatz oder ist es grundsätzlich mit den aktuellen Sicherheitsrichtlinien nicht möglich? Danke im voraus. Arthur |
Re: Applikation einem anderen Desktop zuweisen
Zitat:
|
Re: Applikation einem anderen Desktop zuweisen
Sorry, aber da gibt es eine Menge anderer Gründe warum es nicht gehen wird und das alles, ohne dass UAC überhaupt dabei ist.
Hast du die MSDN von SetThreadDesktop mal gelesen? Zitat:
Zitat:
Wenn du die App als User "ar" gestartet hast und der Benutzer "z" loggt sich ein, dann gibt es zwei Probleme: 1. Vermutlich befindet sich Benutzer "ar" in einer anderen Terminalsitzung (0 in XP, 1 in >= Vista) und damit gibt es keine Chance zu wechseln. (Prüfe das mit Taskmgr oder ProcessExplorer. Stichwort: SessionID) 2. Benutzer ar hat kein Zugriff auf den Destkop von Benutzer z. D.h. ein SYSTEM Programm muss die DACL der Windowstation und Desktops von z ändern, damit das Programm dort überhaupt etwas anzeigen kann. Es wäre besser die Anwendung neuzustarten oder den Teil, der Systemrechte benötigt in einen Dienst auszulagern und über Client-/Serverkommunikation den Status anzuzeigen. |
Re: Applikation einem anderen Desktop zuweisen
Gut. Ich denke ich habe verstanden.
Danke für die Infos. Gruss Arthur |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:07 Uhr. |
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