2012-10-23 69 views
0

我有一個自定義頁面,並添加了一個進度條。現在我有兩個功能來控制進度條。一個功能是停止少量服務,另一個功能是從安裝位置備份一些文件。如何從兩個不同的任務控制進度條

Function myCustomPage 
    Var /GLOBAL progressBar 
    Var /GLOBAL label 
    !insertmacro MUI_HEADER_TEXT "Setup is preaparing to install updates" "Please wait" 
    nsDialogs::Create 1018 
    ${NSD_CreateLabel} 10 15 80% 10% "" 
    Pop $label 
    ${NSD_CreateProgressBar} 10 30 80% 8% "" 
    Pop $progressBar 

    ${NSD_CreateTimer} BackUp_Files.Callback 10 
    ${NSD_CreateTimer} Stop_Services.Callback 10 
    nsDialogs::Show 
FunctionEnd 

Stop_Services回撥功能

Function Stop_Services.Callback 
    ${NSD_SetText} $label "Stopping services" 
    ${NSD_KillTimer} Stop_Services.Callback 
    SendMessage $progressBar ${PBM_SETRANGE32} 0 100 
    SendMessage $progressBar ${PBM_SETPOS} 25 0 
    Sleep 100 
    SendMessage $progressBar ${PBM_SETPOS} 25 0 
    Sleep 100 
    SendMessage $progressBar ${PBM_SETPOS} 50 0 
    Sleep 100 
    SendMessage $progressBar ${PBM_SETPOS} 75 0 
    Sleep 100 
    SendMessage $progressBar ${PBM_SETPOS} 100 0 
FuncionEnd 

同類結構爲Backup_files.callback了。 結果: 當我查看標籤時,它在「停止服務」和「備份文件」之間切換。 任何人都可以告訴我如何處理這個問題。我想先停止服務,然後我想複製備份文件。在停止服務後需要將進度條設置爲0,並重新開始備份文件。我需要在單個自定義頁面上執行此操作。

回答

1

只需使用一個定時器並在第一個任務結束時call直接執行第二個任務功能...

相關問題