linha de comando comando REGEDIT (edit) sem um popup

1

Estou tentando desabilitar o UAC por meio de um arquivo em lote com um comando REGEDIT, e tudo funciona - mas, preciso fazer isso sem clicar. Quando eu corro o:

REGEDIT /S somefile.reg

Funciona bem, exceto requer e clique inicial para permitir este comando. Existe alguma maneira de contornar isso? Eu estou (temporariamente) desabilitando o UAC com a edição do registro, mas até então está habilitado. Obrigado.

    
por naspinski 19.07.2011 / 22:37

2 respostas

4

Frango e ovo, né?

Sério, no entanto, o que você está tentando fazer não é "suposto" ser possível porque o UAC (apesar de ser negado pela Microsoft como não sendo um limite de segurança formal) é uma espécie de limite de segurança.

Em um ambiente de domínio, você deve controlar o Controle de Conta de Usuário da Diretiva de Grupo (a configuração "Controle de Conta de Usuário: Executar todos os administradores no Modo de Aprovação de Administrador" em "Configurações de Segurança \ Diretivas Locais \ Opções de Segurança" na seção do Grupo Política é o que você provavelmente está procurando).

Se você estiver em um ambiente sem domínio, será necessário executar o script em um contexto já elevado. Como diz @womble em seu comentário, você precisará ignorar o UAC para desabilitar o UAC sem chamar o UAC. Um script de inicialização do computador seria um lugar que você poderia executar isso. Para instalá-lo como um script de inicialização, você terá que ser elevado. Você está de volta ao ovo e ao frango.

    
por 19.07.2011 / 23:33
1

Se você está acessando locais no registro que não exigem privilégios de administrador, você pode usar a variável de ambiente __COMPAT_LAYER . Basta executar isso antes de usar o regedit:

set __COMPAT_LAYER=RunAsInvoker
    
por 22.04.2016 / 14:58