Gibt es eine Möglichkeit, ein Programm, das normalerweise Administratorrechte (über die UAC) erfordert, ohne diese Rechte auszuführen? (d.h.: keine UAC-Eingabeaufforderung und kein systemweiter Zugriff).
Hinzugefügt: Ohne die ausführbare Datei selbst zu verändern.
Trotz James's Antwort habe ich einige Möglichkeiten gefunden, wie es fast möglich ist:
trustInfo
aus dem Manifest entfernen (oder das Manifest ganz, so dass ich ein externes verwenden kann), so dass das Programm ohne UAC starten kann. Leider wird dadurch die ausführbare Datei verändert, so dass sie kurz darauf aufgrund eines internen Prüfsummentests beendet wird.Ich hoffe, dass ich nicht zu spät zur Party komme, aber ich habe nach einer ähnlichen Frage gesucht und ohne eine Antwort hier zu sehen, habe ich herausgefunden, dass Windows' eingebauter RunAs
-Befehl, wenn er als Administrator ausgeführt wird, das mit /trustlevel
-Schalter tun kann.
RUNAS /trustlevel:<TrustLevel> program
/showtrustlevels displays the trust levels that can be used
as arguments to /trustlevel.
/trustlevel <Level> should be one of levels enumerated
in /showtrustlevels.
Das hat in meinem Fall funktioniert. Ironischerweise erfordert das explizite Starten eines Programms ohne Berechtigungsstufe eine erweiterte Eingabeaufforderung. Stell dir das mal vor :) Ich hoffe, es hilft Ihnen.
Ich habe dieses Problem heute mit dem MS Application Customization Toolkit gelöst.
Ich habe die Anweisungen [in einem Tech-Republic-Artikel] befolgt (http://www.techrepublic.com/blog/window-on-windows/selectively-disable-uac-for-your-trusted-vista-applications/635).
Im Grunde genommen:
Sie erhalten das Toolkit von MS hier .
Klicken Sie auf Fix
Wählen Sie die Option RunAsInvoker.
Klicken Sie mit der rechten Maustaste auf die Korrektur und wählen Sie Installieren
Nein, wenn ein Programm UAC erfordert, versucht es, auf etwas außerhalb seiner Sandbox zuzugreifen. Das Programm wird ohne den erweiterten Zugriff nicht korrekt ausgeführt.
Wenn Sie nur die Benachrichtigung loswerden möchten, können Sie UAC deaktivieren.
Deaktivieren Sie UAC unter Windows Vista: Start, geben Sie "Benutzer" ein. Klicken Sie auf "Benutzerkonten". Klicken Sie in dem Fenster, das sich öffnet, auf "Einstellungen für die Benutzerkontensteuerung" und dann auf UAC deaktivieren.
UAC unter Windows 7 deaktivieren: Starten Sie, geben Sie "Benutzer" ein. Klicken Sie auf "Einstellungen der Benutzerkontensteuerung". Ziehen Sie die Auswahlleiste ganz nach unten auf "Nie benachrichtigen"