![]() |
Adminrechte - Programmstart trotz Ablehnen
Man kann ein Programm per Manifest ja so konfigurieren, dass es Adminrechte anfordert, wobei die UAC erscheint. Verweigert man aber die Rechte mittels "Nein", startet das ganze Programm nicht mehr.
Gibt es auch eine Möglichkeit, dass bei "Nein" das Programm einfach ohne Adminrechte startet? Ich weiß, dass es diverse Möglichkeiten zur Abfrage gibt, aber ich suche nach einer 1-Klick-Lösung. |
AW: Adminrechte - Programmstart trotz Ablehnen
Nein, nicht direkt, denn da dein Programm dabei nichts zu bestimmen hat, bzw. bei NEIN wird dein Programm nicht ausgeführt und kann somit nichts anderes machen.
![]() Level=asInvoker : so wenig wie möglich Level=highestAvailable : so viel wie möglich Level=requireAdministrator : unbedingt ganz viel uiAccess=false: ohne den Benutzer zu fragen (nimm das was geht, wenn möglich) Zitat:
Du kannst aber zwei EXEn erstellen. * Eine mit Level=asInvoker (oder highestAvailable) und uiAccess=false * und die startet, bzw. versucht die Andere zu starten (requireAdministrator oder highestAvailable und mit uiAccess=True) * wenn das ging, beendet sie sich selbst und wenn nicht, dann arbeitet sie |
AW: Adminrechte - Programmstart trotz Ablehnen
Oder die Exe ist ohne Adminrechte im Manifest.
Beim start startest du dich nochmal mit "runas". Startet dann diese neue Exe "durch", so kannst die zuerst gestartete Exe sich beenden. Wenn der Start der Exe mit "runas" fehlschlägt, startet sie selbst "durch". Machen andere Programme wie "TeamViewer" auch. |
AW: Adminrechte - Programmstart trotz Ablehnen
Danke euch beiden. An zwei Instanzen und "RunAs" hatte ich gedacht, aber mit einer zusätzlichen Abfrage etc., die ich vermeiden wollte. Aber so wird das Ziel ja auch erreicht, dass es für den Anwender keinen Unterschied dazu gibt, dass das Manifest/UAC das Programm durchlassen würde.
|
AW: Adminrechte - Programmstart trotz Ablehnen
Ich würde gern eine Antwort nachschieben:
Die Adminrechte braucht mein Programm nur zu besonderen Gelegenheiten, es muss nicht das ganze Programm die ganze Zeit mit Adminrechten laufen. Jetzt habe ich ![]() Wie könnte eine Konstruktion aussehen, dass ich mir einmal eine Erlaubnis hole, die dann für mehrere Ausführungen eines externen Prozesses gültig wäre? |
AW: Adminrechte - Programmstart trotz Ablehnen
Zitat:
![]() Alternativ könnte man natürlich den mit erhöhten Rechten (runas) laufenden Prozeß laufenlassen und nur "verstecken" und dann wieder hervorholen, sobald er benötigt wird. Aber da bist du dann eben schon sehr dicht bei dem was Dienste ohnehin leisten sollen. |
AW: Adminrechte - Programmstart trotz Ablehnen
Oder man speichert/clont sich das Token vom ersten Mal und benutzt es für die nachfolgenen Berechtigungsanforderungen.
|
AW: Adminrechte - Programmstart trotz Ablehnen
@Assarbad: Dienst ist ein bisschen überdimensioniert. Versteckter Prozess: Den müsste ich dann über IPC ansteuern, vermutlich?
@Himitsu: Klingt sehr gut, aber von welchem Token ist die Rede und wie soll das gehen? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:00 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 by Thomas Breitkreuz