Como executar um programa com privilégios de administrador no login do usuário no Windows?

11

Estou usando o Windows 8.1 x64 e gostaria de executar um programa com privilégios de administrador no login do usuário.

Tentei fazer um atalho do programa e marquei "executar como administrador" nas propriedades do atalho ou do próprio programa e coloquei o atalho em C:\Users\MyUser\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startupou C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp, mas marcar a caixa apenas o tornou inválido.

Em seguida, editei o programa pelo Resource Hacker para modificar seu manifesto para que privilégios de administrador fossem necessários para este programa. Isso também tornou os atalhos em diretórios de inicialização inválidos. Então, depois disso, tentei adicionar o programa, HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Runmas também não funcionou.

Como diabos posso executar um programa com privilégios de administrador no login do usuário?

Frederick Zhang
fonte
inicie um script que usa #runas
Ramhound
@ Ramhound Você quis dizer escrever um lote cujo conteúdo é runas /env /user:domain\Administrator X:\path\to\the\program.exee colocá-lo no diretório de inicialização automática?
Frederick Zhang
Você pode usar praticamente qualquer coisa que desejar executar esse comando. Não precisa ser um script em lote.
Ramhound 28/05
1
@ Ramhound Mas este comando solicitará a senha que eu não quero.
Frederick Zhang
Você pode usar runase salvar as credenciais de administrador, embora isso represente um risco à segurança por razões óbvias. Você é 100% deste programa com permissão de administrador para funcionar corretamente?
Ramhound 28/05

Respostas:

14

A melhor maneira (e a única maneira simples, se você não quiser que isso seja executado como administrador, mas também sem um prompt do UAC) é criar uma tarefa agendada. Lá, você pode especificar em qual usuário deseja executá-lo, mas também que "deve executar com os privilégios mais altos". Provavelmente, é isso que você realmente deseja, porque o botão da caixa de seleção "Executar como administrador" aciona um prompt do UAC em vez de realmente usar um usuário administrativo. Se você também especificar um gatilho como "no logon do usuário", ele terá o mesmo efeito que o uso da chave de inicialização ou execução.

Como alternativa, você pode usar runas com a opção / savecred para armazenar a senha de outro usuário uma vez e armazená-la em cache para sempre, mas não funciona em torno do UAC.

Syberdoor
fonte
1
Também tentei o agendador de tarefas, mas o ícone da bandeja do programa estava ausente. Mas revisei as configurações da tarefa agora e encontrei uma caixa de combinação Configure forcujo valor padrão era Vista / 2008. Então eu mudei para o Windows 8.1 e está tudo bem agora. Obrigado.
Frederick Zhang
0
  1. Crie um arquivo como appStart.cmd contendo:

    start "" %1

  2. Segundo no registro, você deve adicionar ao HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

Par de valor-chave

Chave: "appname"

Valor: "caminho para appStart.cmd" "caminho para myapp.exe"

Dessa forma, na inicialização do Windows, ele chamará seu aplicativo no prompt de comando e solicitará permissão para executar como administrador. Depois de aceitar o prompt de comando, feche e seu aplicativo será executado com privilégios de administrador.

Daniel Filipov
fonte