我用InnoSetup設置環境變量在註冊表中:Innosetup SendMessage函數改變環境後值
[Registry]
Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"; ValueType: string; ValueName: "MY_PROGRAM_HOME_DIR"; ValueData: "{app}"
但系統無法看到這個變量,直到我打電話SendMessage
。
[Code]
procedure DeinitializeSetup();
begin
// HWND_BROADCAST = $FFFF
// WM_SETTINGCHANGE = $001A
SendMessage($FFFF, $001A, 0, Longint(PChar('Environment')));
end;
InnoSetup說:
...列60:類型不匹配
如何正確InnoSetup腳本類型轉換成PChar
Longint
?