![Como posso ter uma opção de menu de contexto com o botão direito do mouse "Excluir na reinicialização" funcional no Windows 10?](https://rvso.com/image/1505676/Como%20posso%20ter%20uma%20op%C3%A7%C3%A3o%20de%20menu%20de%20contexto%20com%20o%20bot%C3%A3o%20direito%20do%20mouse%20%22Excluir%20na%20reinicializa%C3%A7%C3%A3o%22%20funcional%20no%20Windows%2010%3F.png)
Estou procurando a maneira mais conveniente de dizer ao Windows 10 para excluir determinados arquivos na reinicialização. Ter uma opção de menu de contexto com o botão direito parece ser a solução mais eficiente. Encontrei as seguintes entradas de registro que me oferecem essa opção, mas no Windows 10 x64, na verdade, ela não exclui os arquivos aos quais aplico.
[HKEY_CLASSES_ROOT\*\shell\Delete on reboot\command]
@="CMD /E:OFF /C REG ADD HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\Currentversion\\RunOnce /v \"Del %1 OnNextReboot\" /d ^\"cmd.exe /c DEL /F /Q \\\"%1\\\"\" /f\""
[HKEY_CLASSES_ROOT\*\shell\Open]
[HKEY_CLASSES_ROOT\Folder\shell\Delete on reboot\command]
@="CMD /E:OFF /C REG ADD HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\Currentversion\\RunOnce /v \"Del %1 OnNextReboot\" /d ^\"cmd.exe /c RD /S /Q \\\"%1\\\"\" /f\""
Aparentemente, esse código de registro está flutuando na Internet há muito tempo, e as informações mais atualizadas que consegui encontrar sobre ele foram alguém dizendo que funcionava para eles no Windows 7. Existe alguma maneira de modificá-lo para funcionar no Windows 10 ?
Obrigado.
Responder1
Baixar SysInternalsMovefile.exee coloque-o na C:\Windows
pasta.
Clique com o botão direito em Movefile.exe e clique em Propriedades. Selecione a guia Compatibilidade, clique em "Alterar configurações para todos os usuários" Ative "Executar este programa como administrador" Clique em OK, OK.
Em seguida, crie um arquivo .REG conforme abaixo.
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\*\shell\deleteonreboot]
@="Delete File on Reboot"
[HKEY_CLASSES_ROOT\*\shell\deleteonreboot\command]
@="\"C:\\Windows\\movefile.exe\" \"%1\" \"\""
Clique duas vezes no arquivo REG para aplicar as configurações.
Isso adiciona a opção Excluir na reinicialização no menu do botão direito.
Responder2
Minha solução foi possível graças à ajuda do w32sh. A solução que estou compartilhando nesta resposta é seguir primeiro as instruções dele.
No final, o que acabei fazendo aqui foi combinar um comando para apropriar-se do arquivo e usar movefile.exe nele.
Criei um arquivo em lote (chamei-o de "movefile_custom.bat") com o seguinte:
takeown /f %1 /r /d y && icacls %1 /grant administrators:F /t
takeown /f %1 && icacls %1 /grant administrators:F
"C:\Windows\movefile.exe" %1 ""
(NOTA: A entrada do botão direito só funciona em arquivos, então a primeira linha que lida com diretórios é provavelmente desnecessária, mas deixei-a por enquanto de qualquer maneira. Não faz mal a nada)
então baixeiConversor BAT para EXEe usei-o para (você adivinhou) converter meu "movefile_custom.bat" em "movefile_custom.exe". O conversor possui uma opção de administrador para o EXE.
Editei a entrada do registro para apontar para meu novo arquivo "movefile_custom.exe" em vez da base "movefile.exe".
Funciona muito bem agora.
Responder3
Esta página descreve como usar a Política de Grupo para executar scripts personalizados no desligamento/reinicialização ou logoff:https://technet.microsoft.com/en-us/library/cc753404(v=ws.11).aspx
Eu usei isso no passado em versões anteriores do Windows e, embora a página diga apenas até o Win 7/2012, sei que políticas semelhantes também funcionam no 10. Aposto que isso também funcionaria.
Existem também serviços de terceiros que você pode configurar para executar um script no desligamento/reinicialização - como SRVSTART (http://www.rozanski.org.uk/services), embora não seja muito simples nesse contexto e não seja seu objetivo principal.