0

如何更改进度条位置,例如在安装页面上并将其放置在表单的中心而不是默认的顶部位置?

4

1 回答 1

1

A)使用Resource Hacker编辑其中一个 UI 文件并使用ChangeUI应用它

或者

B)在运行时更改它:

outfile "$%temp%\test.exe"
requestexecutionlevel user
showinstdetails nevershow

Page instfiles "" instfilesshow

Function instfilesshow
FindWindow $9 "#32770" "" $HWNDPARENT
GetDlgItem $8 $9 0x3EC
System::Call '*(i,i,i,i)i.r7' ; Allocate a RECT struct
System::Call 'USER32::GetClientRect(ir9,ir7)'
System::Call '*$7(i,i,i.r0,i.r1)' ; Get inner dialog width/height
System::Call 'USER32::GetWindowRect(ir8,ir7)'
System::Call '*$7(i.r2,i.r3,i.r4,i.r5)'
System::Free $7
IntOp $5 $5 - $3 ; progress height
StrCpy $2 10 ; left padding
IntOp $4 $0 - 20 ; width = dialog - left+right padding
IntOp $0 $5 / 2
IntOp $1 $1 / 2
IntOp $1 $1 - $0
!define SWP_NOZORDER 4
System::Call 'USER32::SetWindowPos(ir8,i0,ir2,ir1,ir4,ir5,i${SWP_NOZORDER})'
FunctionEnd

Section
SectionEnd
于 2012-10-16T14:20:14.967 回答