![]() |
ShellExecute ohne erweiterte Rechte
Hi,
ich habe folgendes Problem: - ich starte einen Updater, welcher erweiterte Rechte erfordert, da er auch in %programfiles% schreibt -> aufruf via ShellExecute mit 'runas' -> Der Benutzer hat keine Adminberechtigungen -> es kommt die UAC-Credential-Aufforderung von Windows - der Admin gibt die Credentials ein - Updater beendet die Hauptanwendung, Update wird durchgeführt und soll nach fertigstellung die zuvor gestartete Hauptentwendung wieder starten - Die Anwendung wird im Benutzerkontext des Admins gestartet Jemand eine Idee wie ich die Anwendung im vorherigen Benutzerkontext starten kann? |
AW: ShellExecute ohne erweiterte Rechte
Statt:
- ich starte einen Updater, welcher erweiterte Rechte erfordert Besser: - ich starte einen Updater, welcher keine erweiterte Rechte erfordert - dieser Updater startet einen Updater, welcher erweiterte Rechte erfordert (Bei mir sind beide Updater die selbe exe) |
AW: ShellExecute ohne erweiterte Rechte
Zitat:
![]() (der Code ist nicht von mir). |
AW: ShellExecute ohne erweiterte Rechte
Zitat:
das installierte Programm starten soll? |
AW: ShellExecute ohne erweiterte Rechte
Ich hatte mal ein solches Projekt angefangen, aber nicht fortgesetzt. Grundsätzlich klappte es damals aber:
![]() Heute würde ich das sicher nicht mehr so schreiben, aber das kennt vermutlich jeder Entwickler... :wink: Die grundlegende Idee ist, dass man eine Instanz ohne Adminrechte weiter laufen lässt während das Update läuft, und diese Instanz dann eine neue Version von sich selbst ebenfalls ohne Adminrechte startet. Sie bleibt ja im zuvor verwendeten Benutzerkontext. Dafür müssen die Exen natürlich untereinander kommunizieren. |
AW: ShellExecute ohne erweiterte Rechte
Zitat:
|
AW: ShellExecute ohne erweiterte Rechte
Es gab da mal so eine ähnliche Frage:
![]() |
AW: ShellExecute ohne erweiterte Rechte
Zitat:
hab diese Lösung genutzt und sie reicht für meine Zwecke. So muss ich die Anwendung nicht groß umbauen. Lg |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:04 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