【发布时间】:2012-09-27 03:11:35
【问题描述】:
如何在 NSIS 安装程序的安装文件页面中更改加载栏的颜色?
以下尝试将消息 PBM_SETBARCOLOR 发送到加载栏窗口但加载栏的颜色从未改变?
!include MUI2.nsh
!include WinMessages.nsh
InstallDir "abc"
Name "def"
OutFile "def.exe"
!define MUI_PAGE_CUSTOMFUNCTION_SHOW InstFilesPageShow
!insertmacro MUI_PAGE_INSTFILES
!macro RefreshWindow HWND IDC
GetDlgItem $R0 ${HWND} ${IDC}
ShowWindow $R0 ${SW_HIDE}
ShowWindow $R0 ${SW_SHOW}
!macroend
Function InstFilesPageShow
SendMessage 1004 ${PBM_SETBARCOLOR} 0 "COLORREF(0,200,200)" #0xFF0000
System::Call `user32::SendMessage(i R1, i ${PBM_SETBARCOLOR}, i 0, i COLORREF(0,0,0))` #System::Call `user32::SetWindowPos(i R8, i ${HWND_TOP}, i 0, i 0, i ${w}, i ${h}, i ${SWP_NOMOVE})`
#!insertmacro RefreshWindow $HWND 1004
#!insertmacro RefreshWindow $mui.InstallPage 1004
!insertmacro RefreshWindow $HWNDPARENT 1004
FunctionEnd
Section "Dummy"
DetailPrint "Test"
SectionEnd
【问题讨论】:
-
COLORREF 是 Win32 类型,不是宏/函数...
标签: winapi installation nsis