Enquanto o Windows armazena a configuração do protetor de tela no registro, ele não verifica se há alterações constantemente. Isso seria bastante ineficiente.
A maneira correta de alterar a configuração é usar o SystemParametersInfo
função do Win32. Por conveniência, a DLL do painel de controle da área de trabalho exporta uma função que é facilmente acessada a partir da linha de comando que chamará essa função para você. Basta executar o seguinte comando:
rundll32.exe desk.cpl,InstallScreenSaver file.scr
Dito isso, o comando a seguir deve forçar o Windows a reler a configuração do registro:
rundll32.exe user32.dll, UpdatePerUserSystemParameters
Como um aparte, você pode achar mais fácil modificar o registro a partir da linha de comando usando o REG
comando , em vez de escrever .reg
arquivos o tempo todo.