Definir variáveis ??de ambiente de Delphi (Win32)
-
06-07-2019 - |
Pergunta
Estou tentando definir uma variável de sistema amplo ambiente de dentro do meu aplicativo delphi. A documentação diz para adicionar uma chave de registo para HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Environment e, em seguida, transmitir uma mensagem WM_SETTINGCHANGE. Alguém sabe como Transmissão esta mensagem?
PS. Eu estou tentando fazer isso em um aplicativo de console.
Solução
Há também um tópico no Embarcadero Developer Network que abrange esta questão e fornecer código de exemplo para enviar a mensagem. Os usos autor SendMessageTimeout , como recomendado no doc MSDN para WM_SETTINGCHANGE :
Outras dicas
SendMessage
. Use HWnd_Broadcast
como janela de destino.
A melhor opção pode ser SendNotifyMessage
, que não faz esperar por todos os destinatários de retorno.