Hvordan tvinger jeg .NET-applikasjonen min til å kjøre som administrator?

Når programmet mitt er installert på en klientmaskin, hvordan tvinger jeg programmet mitt til å kjøre som administrator på Windows 7?

Løsning

Du vil endre manifestet som blir innebygd i programmet. Dette fungerer på Visual Studio 2008 og nyere: Prosjekt + Legg til nytt element, velg "Application Manifest File". Endre elementet "requestedExecutionLevel" til:

Brukeren får meldingen UAC når de starter programmet. Bruk dette med omhu; tålmodigheten kan fort ta slutt.

Kommentarer (8)

Å legge til et requestedExecutionLevel-element i manifestet ditt er bare halve kampen; du må huske at UAC kan være slått av. Hvis den er det, må du utføre kontrollen på den gamle måten og sette opp en feildialog hvis brukeren ikke er administrator (kall IsInRole(WindowsBuiltInRole.Administrator) på trådens CurrentPrincipal).

Kommentarer (7)

Du kan legge inn en manifestfil i EXE-filen, noe som vil føre til at Windows (7 eller nyere) alltid kjører programmet som administrator.

Du finner mer informasjon i Trinn 6: Opprette og legge inn et applikasjonsmanifest (UAC) (MSDN).

Kommentarer (0)