Seu perfil de usuário pode estar corrompido. Tente renomear seu perfil em C:\Users
no Windows 7 e C:\Documents and Settings
no Windows XP, em seguida, reinicie e efetue login com as mesmas credenciais para que um novo perfil seja gerado. Se isso funcionar, você pode selecionar seus arquivos do seu perfil antigo e copiá-los para o novo perfil.
Estranho você disse que enviar uma mensagem WM_SETTINGCHANGE
não funcionou; veja esta página de Suporte do Windows para um exemplo C # / VB que deve funcionar. Além disso, veja se apenas abrindo e clicando em OK na caixa de diálogo Environment Variables clicando com o botão direito do mouse no ícone My Computer na área de trabalho, selecionando Properties no menu de opções, depois na guia Advanced e clicando no botão Environment Variables. Isso carrega as variáveis HKCU\Environment
para mim e vários outros pôsteres.
Verifique se suas variáveis HKCU\Volatile Environment
estão sendo geradas quando você faz logon. Estes devem incluir HOMEPATH
, HOMEDRIVE
, USERNAME
etc. Essa chave está completamente ausente?
Se nada funcionar, uma solução para mim foi usar SETX
em um arquivo de lote colocado na pasta Inicialização de Todos os Usuários no Menu Iniciar. Para o Windows XP, faça o download de SETX
como parte das Ferramentas de suporte do Windows XP Service Pack 2 .
SET HOME=
SET HOME=%USERPROFILE%
SETX HOME "%HOME%"
Isso acionará as variáveis HKCU\Environment
a serem lidas na inicialização. Em seguida, mescle as chaves abaixo com o seu registro. Eles serão estáticos para todos os usuários até que você corrija seu perfil, embora um possa inventar um arquivo de lote mais sofisticado se eles estivessem inclinados. Substitua nome de usuário , logon-server e domínio . Este exemplo é para o Windows XP. Salve-o como um arquivo .reg, clique com o botão direito e selecione mesclar. Você também pode adicionar esses usando SETX
. Você também pode usar REG ADD
ou REGEDIT
seguido por WM_SETTINGCHANGE
, pois esses comandos não atualizam seu ambiente atual. Consulte SS64 para uso de comando de SETX
, REG
e REGEDIT
.
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Volatile Environment]
"APPDATA"="C:\Documents and Settings\<username>\Application Data"
"HOMEPATH"="\Documents and Settings\<username>"
"HOMEDRIVE"="C:"
"LOGONSERVER"="\\<logon-server>"
"USERDOMAIN"="<domain>"
"USERNAME"="<username>"
"USERPROFILE"="C:\Documents and Settings\<username>"
"USERDNSDOMAIN"="<domain.com>"
"LOCALAPPDATA"="C:\Documents and Settings\<username>\Local Settings\Application Data"
[HKEY_CURRENT_USER\Volatile Environment]
"CLIENTNAME"="Console"
"SESSIONNAME"=""