Como o controle de conta de usuário (UAC) afeta o aplicativo
Controle de conta de usuário (UAC) é um recurso do Windows Vista em que o usuário o contas tem privilégios limitados.Você pode encontrar informações detalhadas sobre o UAC nesses sites:
Guia passo a passo de controle de conta de usuário do Vista Windows
Developer práticas recomendadas e diretrizes para aplicativos em um menos privilegiado ambiente
Entendendo e configurando o controle de conta de usuário no Windows Vista
Projetos de construção após habilitar o UAC
Se você criar um projeto Visual C++ no Windows Vista com UAC desativado e habilitar UAC posteriormente, você deve limpar e reconstruir o projeto para que ele funcione corretamente.
Aplicativos que exigem privilégios administrativos
Ser padrão, o vinculador Visual C++ incorpora um fragmento UAC no manifesto de um aplicativo com um nível de execução de asInvoker.Se seu aplicativo requer privilégios administrativos para executar corretamente (por exemplo, se ele modifica o nó em HKLM do registro ou grava em áreas protegidas do disco, como o diretório do Windows), você deve modificar seu aplicativo.
A primeira opção é modificar o fragmento UAC do manifesto para alterar o nível de execução requireAdministrator.O aplicativo solicitará ao usuário credenciais administrativas antes de executar.Para obter informações sobre como fazer isso, consulte / (Informações do UAC incorpora no manifesto) MANIFESTUAC.
A segunda opção é não incorporar um fragmento UAC no manifesto, especificando o /MANIFESTUAC:NO opção de vinculador.Nesse caso, o aplicativo será executado virtualizado.As alterações feitas no registro ou o sistema de arquivos não serão mantidas após o término de seu aplicativo.
O fluxograma a seguir descreve como o aplicativo será executado dependendo se o UAC está habilitado e se o aplicativo tem um manifesto UAC: