
Eu tenho um script Python que adiciona algum texto ao hosts
arquivo que permite apenas acesso de administrador. Então, o que eu faço é primeiro abrir o cmd no menu Iniciar do Windows 7, clicar com o botão direito e ir para Executar como Administrador.
Isso funciona bem.
No entanto, minha intenção é executar esse script Python assim que o Windows for iniciado.
Se não houvesse nenhum hosts
arquivo protegido, eu simplesmente mudaria a extensão do script Python de .py para .pyw e colocaria o script na pasta Inicialização para que o Windows o executasse na inicialização, mas neste caso o script não funcionaria .
Alguém sugeriria como eu poderia fazer isso?
Editar% s: A duplicata sugerida não resolve meu problema. Se eu apontar para o script .py ou .pyw no Agendador de tarefas, nada acontece.
Acho que deveria apontar para um arquivo .cmd ou .bat, mas não sei o que escrever nesse arquivo.
Responder1
Simples,
- Abra o bloco de notas
- Insira o seguinte código
@echo off
start < python script path here >
exit
Nota: mencione o caminho do script .py na tag acima
- Salve este arquivo como "anyname.bat" em qualquer lugar
- Abra o agendador de tarefas
- Criar nova tarefa
- habilite
Run with highest privileges
o token " " para esta tarefa - Vá para a guia de ação
- Adicione o
run a program
gatilho e selecione o arquivo em lote - Agende a tarefa para
run at startup
- Clique OK
Responder2
Respondendo à minha própria pergunta. O que fiz foi criar um arquivo .bat conforme sugerido pela resposta de Ashok:
@echo off
start C:/folder/script.pyw
exit
Você deve renomear seu Python com uma extensão .pyw.
Clicar duas vezes no arquivo .bat ainda não resolve o problema, pois ele não está sendo executado como administrador. Para consertar isso:
- Abra o agendador de tarefas
- Criar nova tarefa
- Selecione "Executar com privilégios mais altos"
- Vá para
action
a guia - Adicione o
run a program
gatilho e selecione o arquivo em lote - Agende a tarefa para ser executada na inicialização
- Clique em salvar
Feito.