![]() |
ShellExecute einer Anwendung die Admin Rechte benötigt minimiert den UAC Request
Liste der Anhänge anzeigen (Anzahl: 1)
Wenn ich eine Anwendung starte die Admin Rechte braucht kommt in die Mitte des Bildschirms der übliche UAC Dialog wo ich meine Zustimmung geben muss.
Wenn ich die gleiche Anwendung in einer Delphi App mit ShellExecute() ausführe kommt dieser UAC Dialog nicht in die Bildschirmmitte. Statt dessen wird er minimiert angezeigt, d.h. der Benutzer muss auf die Taskleiste klicken. Kann man das irgendwie verhindern damit der Dialog in die Mitte des Bildschirms kommt? |
AW: ShellExecute einer Anwendung die Admin Rechte benötigt minimiert den UAC Request
Was gibst du für den ersten Parameter (das HWND) bei
Delphi-Quellcode:
an?
ShellExecute
|
AW: ShellExecute einer Anwendung die Admin Rechte benötigt minimiert den UAC Request
SW_SHOWNORMAL
gruss |
AW: ShellExecute einer Anwendung die Admin Rechte benötigt minimiert den UAC Request
Zitat:
Application.Handle bringt keinen Unterschied. |
AW: ShellExecute einer Anwendung die Admin Rechte benötigt minimiert den UAC Request
Zitat:
|
AW: ShellExecute einer Anwendung die Admin Rechte benötigt minimiert den UAC Request
Zitat:
Delphi-Quellcode:
macht genau was du schilderst: Der UAC-Dialog ist minimiert und blinkt. Sage ich statt
ShellExecute(
Application.Handle, 'runas', 'notepad', nil, nil, SW_SHOWNORMAL );
Delphi-Quellcode:
nun
Application.Handle
Delphi-Quellcode:
kommt direkt der UAC-Dialog und überdeckt alles.
Application.MainForm.Handle
|
AW: ShellExecute einer Anwendung die Admin Rechte benötigt minimiert den UAC Request
Und was ist wohl der Grund dafür? :stupid:
Application (die MessageOnly-Form) ist unsichtbar und die MainForm ist sichtbar. ![]() Man kann hier auch
Delphi-Quellcode:
oder
Application.MainFormHandle
Delphi-Quellcode:
oder besser
Screen.AcriveForm.Handle
Delphi-Quellcode:
(wenn man das aus einer Methode einer Form aufruft) verwenden.
Self.Handle
PS: "Früher" war Application halbsichtbar, denn früher war der Eintrag in der Taskleiste das Application und nun ist es die MainForm (sonst zeigt Aero-Peak nur das leere Message-Fenster der Application) |
AW: ShellExecute einer Anwendung die Admin Rechte benötigt minimiert den UAC Request
Da meine App im Tray Icon läuft (also Form versteckt ist), würde es die Sache erklären.
|
AW: ShellExecute einer Anwendung die Admin Rechte benötigt minimiert den UAC Request
Die Frage ist wie ich das Problem umgehe wenn mein Fenster versteckt ist.
Screen.AcriveForm ist nil. Ich kam noch auf die Idee GetDesktopForm() als Handle zu nehmen, aber dann ist es immer noch minimiert. Hat jemand eine andere Idee? |
AW: ShellExecute einer Anwendung die Admin Rechte benötigt minimiert den UAC Request
Ohne Handle probiert?
Oder im Notfall einfach ein winziges Fenster (1 Pixel, ohne Rahmen und Taskleisteneintrag) erstellen und in den Vordergrund bringen (aktiv machen), bzw. ein Fenster außerhalb des sichtbaren Bereichs. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:23 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