Meu método preferido é usar a Instalação Ativa. O que faz é verificar quando um usuário efetua login em uma máquina se eles executaram um script ou comando específico (como o que você teria) e, se não, executá-lo. Portanto, você só executará um script específico para um usuário uma vez em sua estação de trabalho. Achei isso perfeito para escrever no HKCU, porque você não precisa carregar cada seção, e apenas as contas nas quais as pessoas efetuam login são modificadas.
Não para me promover, mas escrevi um post sobre 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 exclusivo que desejar. Os GUIDs são frequentemente usados, 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á sendo executado.
Com esta solução, a linguagem de script é irrelevante. Você pode criar um arquivo VBScript, Powershell, Batch. Tudo o que permite escrever no HKCU como o usuário conectado. Usar reg.exe
diretamente funciona bem também.
O outro toque final opcional que você pode fazer é carregar e modificar o Hive do usuário padrão. Isso definiria o valor do registro para todos os novos usuários que fizerem logon pela primeira vez nesse sistema específico.