Execute um processo do Windows com privilégios mais baixos [duplicados]

0

Eu vejo muitos tópicos aqui sobre como um software pode ser programado para solicitar privilégios de administrador no Windows, mas no meu caso eu tenho um instalador de software que é executado com privilégios de administrador e, no final da instalação, ele deve executar outro processo com privilégios limitados (como o usuário logado). O instalador e os softwares instalados foram criados por mim usando o Delphi.

Estou pesquisando sobre este assunto durante todo o dia e parece ser uma tarefa muito difícil de conseguir somente pela linguagem programm. Minha pergunta é se existe algum comando do Windows que eu possa usar para "chamar" o executável com privilégios mais baixos ou talvez uma configuração de manifesto que eu possa incorporar ao software instalado para evitar que ele seja executado com privilégios de administrador. Bem, quaisquer ideias são bem vindas!

Obrigado!

    
por Guybrush 31.01.2018 / 22:25

1 resposta

1

Eu tentei todas as soluções apontadas no semelhante pergunta , sem sucesso. Minha solução alternativa era usar o schtasks comando dentro de um arquivo BAT para agendar uma tarefa do Windows, executar e excluí-lo na seqüência.

Primeiro, crio uma tarefa manualmente usando o Agendador de Tarefas e a exporto para um arquivo XML (clique com o botão direito em > Exportar).

DepoisdecriarumarquivoBATparafazerotrabalhocombasenoarquivoXML:

schtasks/create/tn"TempTask" /xml "c:\temp.xml"
schtasks /run /tn "TempTask"
schtasks /delete /f /tn "TempTask"

Espero que ajude outras pessoas com o mesmo problema! Obrigado!

    
por 02.02.2018 / 21:07