Wie Sie feststellen, warum Antrag auf Erhebung auffordert
Frage
Wenn meine ausführbare Datei starten, Windows Eingabeaufforderung für Höhe, wenn es nicht sein sollte.
Wie kann ich herausfinden, Warum Fenster veranlassen mich meine ausführbare Datei auf Start zu erhöhen?
Weitere Informationen:
- ist nicht Manifestressource (fragt nach
asAdministrator
oder auf andere Weise) - gibt es nicht Manifest-Datei
- die compatibilty Registerkarte (für alle Benutzer und mich nur) das „Ausführen als Administrator“ nicht aktiviert
Wie kann ich feststellen, warum meine Bewerbung für Erhebung veranlasst?
Lösung
In Ermangelung eines Manifests, sind die üblichen Gründe Namen Heuristiken (zB Ihre Datei aufgerufen wird setup.exe) und Gruppenrichtlinien (die Sie nach einer zufällig festgelegt haben „dieses Programm möglicherweise nicht ausgeführt haben, wie erwartet“ -Dialog. )
Um es zu verhindern, genügt es, ein Manifest (eingebettet oder extern) mit asInvoker. Dann werden Sie nicht mehr kümmern uns um diese Heuristik und Sie werden nicht erhöhen.
Ich weiß, ich bemerkte dies vor, aber ich brauche es zu wiederholen: Was ist Ihr Code versucht wird NIEMALS Ursache Erhebung zu tun. NOCH NIE. Dinge, die nicht funktionieren, wenn Sie erhöht sind fehlschlägt, wenn Sie nicht erhöht sind. Es ist Ihnen nicht erhöhen.