Como forço minha aplicação .NET a ser executada como administrador?

Uma vez que meu programa esteja instalado em uma máquina cliente, como forço meu programa a ser executado como administrador no Windows 7?

Solução

Você vai querer modificar o manifesto que fica embutido no programa. Isto funciona em Visual Studio 2008 e superior: Project + Add New Item, selecione "Application Manifest File" (Arquivo de Manifesto de Aplicativos). Mude o elemento `` para:

O usuário recebe o prompt UAC quando inicia o programa. Use sabiamente; sua paciência pode se desgastar rapidamente.

Comentários (8)

Adicionar um elemento requestedExecutionLevel' ao seu manifesto é apenas metade da batalha; você tem que lembrar que [UAC][1] pode ser desativado. Se for, você tem que executar a verificação da maneira antiga e colocar um diálogo de erro se o usuário não for administrador <br/> (chamar [IsInRole(WindowsBuiltInRole.Administrator)][2] na sua threadCurrentPrincipal`).

Comentários (7)

Você pode incorporar um arquivo manifesto no arquivo EXE, o que fará com que o Windows (7 ou superior) sempre execute o programa como um administrador.

Você pode encontrar mais detalhes em Passo 6: Criar e Incorporar um Manifesto de Aplicação (UAC) (MSDN).

Comentários (0)