Meu método preferido é usar o Active Setup. O que acontece, é verificar quando um usuário faz login em uma máquina, se tiver executado um script ou comando específico (como o que você teria) e, se não, execute-o. Portanto, você só executará um script específico para um usuário uma vez em sua estação de trabalho. Eu achei isso perfeito para escrever para HKCU, porque você não tem que carregar cada seção e somente as contas que as pessoas logam são modificadas.
Não promover, mas escrevi uma postagem no blog sobre como fazer isso . A solução básica é a seguinte:
Adicione as seguintes entradas do Registro:
[HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components\UniqueID]
"Version"=""
"Stubpath"=""
@=""
- Você pode escolher qualquer ID exclusiva desejada. Os GUIDs são usados com frequência, mas você pode usar qualquer coisa que seja única.
-
Version
é o número da versão que você deseja usar. -
Stubpath
é o comando que será executado. Todas as chamadas MSI, EXE e VBS parecem estar bem. - O
@
é o que deve ser exibido quando o comando está em execução.
Com esta solução, a linguagem de script é irrelevante. Você poderia fazer um arquivo VBScript, Powershell, Batch. O que quer que lhe permita escrever para o HKCU como o usuário logado. O uso de reg.exe
também funciona diretamente bem.
O outro toque final opcional que você pode fazer é carregar e modificar o usuário padrão Hive. Isso definiria o valor do registro para todos os novos usuários que fizerem logon pela primeira vez nesse sistema específico.