2015-10-18 117 views

回答

2

可以使用INetBgDl plugin下載文件的背景和設計自己的用戶界面:

!include nsDialogs.nsh 
!include LogicLib.nsh 
Var hInfo 
Var hPBar 

Function myTimer 
InetBgDL::GetStats 
${If} $2 = 0 
    ${NSD_KillTimer} myTimer 
    ${NSD_SetText} $hInfo "Completed. (Status=$0)" 
    SendMessage $hPBar ${PBM_SETRANGE32} 0 100 
    SendMessage $hPBar ${PBM_SETPOS} 100 0 
    Return 
${EndIf} 
IntOp $2 $2 + $1 
StrCmp $4 "" 0 +2 
StrCpy $4 "?" 
${NSD_SetText} $hInfo "Status=$0$\nCompleted $1 of $2 files$\nDownloaded $3 of $4 bytes" 
SendMessage $hPBar ${PBM_SETRANGE32} 0 $4 
SendMessage $hPBar ${PBM_SETPOS} $3 0 
FunctionEnd 

Function myPage 
nsDialogs::Create 1018 
Pop $0 

${NSD_CreateLabel} 0 0 100% 50% "Starting download..." 
Pop $hInfo 

${NSD_CreateProgressBar} 0 55% 100% 10u "" 
Pop $hPBar 

${NSD_CreateTimer} myTimer 1000 
InetBgDL::Get /RESET "https://download.mozilla.org/?product=firefox-41.0.2-SSL&os=win&lang=en-US" "$PluginsDir\ff.exe" /END 

nsDialogs::show 
${NSD_KillTimer} myTimer 
FunctionEnd 

Page Custom myPage 
Page InstFiles 
+0

謝謝你,它的偉大工程! –