共用方式為


佇列承諾順序

SetupCommitFileQueue 函式認可檔案佇列時,它會依下列順序處理檔案作業:檔案刪除作業,然後檔案重新命名作業,最後是檔案複製作業。 下列大綱說明佇列承諾程式的生命週期。

 

  • 啟動刪除子佇列
    • 啟動檔案刪除作業 <-- 針對每個重複
    • 完成檔案刪除作業 <-- 佇列檔案刪除
  • 完成刪除子佇列
  • 啟動重新命名子佇列
    • 啟動檔案重新命名作業 <-- 針對每個重複
    • 完成檔案刪除作業 <-- 佇列檔案重新命名
  • 完成重新命名子佇列
  • 啟動複製子佇列
    • 啟動檔案複製作業 <-- 針對每個重複
    • 完成檔案複製作業 <-- 佇列檔案複製
    • 完成複製子佇列
  • 完成佇列

 

在每個步驟中,如果發生錯誤,SetupCommitFileQueue 函式會將通知傳送至回呼例程。 回呼例程可以使用佇列傳送的資訊來追蹤安裝進度,並視需要與用戶互動。

例如,如果檔案複製作業需要目前路徑上無法使用的來源檔案,SetupCommitFileQueue 會將SPFILENOTIFY_NEEDMEDIA通知傳送至回呼例程,以及所需的檔案和媒體相關信息。 回呼例程可以使用這項資訊來產生對話框,提示使用者呼叫 SetupPromptForDisk 來插入下一個磁碟

安裝程式 API 包含預設佇列回呼例程 SetupDefaultQueueCallback。 此例程會處理佇列通知,併產生安裝的錯誤對話框和進度列。 您可以使用預設佇列回呼例程,或撰寫篩選回呼例程來處理通知的子集,並將其他人傳遞給預設佇列回呼例程。

如果回呼例程的功能都不符合您的需求,您可以撰寫一個獨立式自定義回呼例程,而該例程不會呼叫預設佇列回呼例程。

如需佇列回呼例程的詳細資訊,請參閱 預設佇列回呼例程,以及 建立自定義佇列回呼例程