文章編號: 927745 - 上次校閱: 2007年2月13日 - 版次: 2.4

使用 Windows Update 離線掃描檔案之開發人員所適用的詳細資訊

系統提示本文適用於您使用的作業系統之外的作業系統。與您不相關的文章內容已停用。

在此頁中

全部展開 | 全部摺疊

結論

新版的 Windows Update (WU) 離線掃描檔案,已於 2006 年 11 月連同現有的 WU 離線掃描檔案 Wsusscan.cab 一併發行。新的 WU 離線掃描檔案 Wsusscn2.cab 採用全新的格式。所有使用現有 WU 離線掃描檔案的掃描解決方案都必須在 2007 年 3 月之前更新,才能使用新的 WU 離線掃描檔案。

任何使用 WU 離線掃描檔案的非 Microsoft 解決方案,都必須在所有的 Microsoft Windows 2000、Microsoft Windows XP 和 Microsoft Windows Server 2003 作業系統上安裝已更新的 Windows Update Agent (WUA)。安裝 Windows Vista 的電腦會在作業系統發行的同時取得已更新的 WUA。因此,Windows Vista 不需要更新。

有些使用 WU 離線掃描檔案來進行離線安全性更新偵測的非 Microsoft 解決方案,可能也需要更新的版本。如果這些解決方案是讀取此檔案,而不是使用 Windows Update API,便需要這些更新版本的 WU 離線掃描檔案。因為此檔案隨時可能會變更,所以並不建議讓這些解決方案直接讀取此檔案。相反地,我們建議開發人員使用 WUA 離線掃描功能。如需此功能的詳細資訊,請造訪下列 MSDN 網站:
http://msdn2.microsoft.com/en-us/library/aa387099.aspx (http://msdn2.microsoft.com/en-us/library/aa387099.aspx)

其他相關資訊

Microsoft 已經變更 WU 離線掃描檔案的內部格式,以解決「Microsoft 知識庫」文件 926464 中所說明的問題。任何使用公用 API 中未記載的方法來存取此檔案的非 Microsoft 解決方案,都可能會需要已更新的檔案。

所有利用已記載的 WUA API 來使用 Wsusscan.cab 檔案的產品、工具和解決方案都必須在 2007 年 3 月之前加以更新。這些產品、工具和解決方案必須要能夠使用新的 Wsusscn2.cab 檔案從新的位置下載 Wsusscn2.cab 檔案。此外,所有的用戶端電腦也必須安裝必要的已更新 WUA 用戶端電腦版本。由於內部格式改變,因此任何直接存取 CAB 檔案的 Microsoft 解決方案可能都需要做額外的變更。

直接存取 Wsusscn2.cab 檔案

因為檔案的格式隨時可能會變更,所以不建議您直接存取 Wsusscn2.cab 檔案。然而,本文所包含的資訊是針對其現有解決方案是直接存取檔案的開發人員所提供的。

判斷 WUA 版本是否為適用於 Wsusscn2.cab 檔案的正確版本

如果電腦上安裝的 WUA 版本不符合對應的掃描封裝格式的最小版本需求,已安裝的 WUA 版本將不會使用該掃描封裝,並且可能會從其掃描封裝相關 API 傳回 WU_E_OL_NEWCLIENT_REQUIRED 和其他的 HRESULT 程式碼。最糟的情況是,已安裝的 WUA API 版本可能不會支援任何的掃描封裝相關功能。例如,WUA API 可能不會支援 IUpdateServiceManager 介面。如需如何避免這種情況的詳細資訊,請造訪下列網站:
http://msdn2.microsoft.com/en-us/library/aa387099.aspx (http://msdn2.microsoft.com/en-us/library/aa387099.aspx)
此資訊可幫助您瞭解應用程式可能會如何在電腦上安裝最新版本的 WUA。

應用程式可能會先在電腦上安裝最新版本的 WUA,然後再搭配使用掃描封裝和 WUA API。如需如何使用掃描封裝在離線環境中掃描更新的詳細資訊,請造訪下列網站:
http://msdn2.microsoft.com/en-us/library/aa387290.aspx (http://msdn2.microsoft.com/en-us/library/aa387290.aspx)
如需 IUpdateCollection 介面的詳細資訊,請造訪下列網站:
http://msdn2.microsoft.com/en-us/library/aa386107.aspx (http://msdn2.microsoft.com/en-us/library/aa386107.aspx)
如需掃描封裝的詳細資訊,請造訪下列網站:
http://msdn2.microsoft.com/en-us/library/aa386821.aspx (http://msdn2.microsoft.com/en-us/library/aa386821.aspx)
如需 WUA API 的詳細資訊,請造訪下列網站:
http://msdn2.microsoft.com/en-us/library/aa387099.aspx (http://msdn2.microsoft.com/en-us/library/aa387099.aspx)

CAB 檔案格式的變更

Wsusscan.cab 檔案包含一個 CAB 檔案。此檔案是 Package.cab。Wsusscn2.cab 檔案包含下列檔案:
  • 一個 Index.xml 檔案。該檔案包含下列元件:
    • <Index> 元素
      Version 屬性 (數字)
      必要項目?是
      意義使用 Index.xml 檔案的格式的版本號碼
      備註:此值的數值必須等於 Version="1"
    • <CabList> 元素
      Xor 屬性 (數字)
      必要項目?否
      預設值:Xor="0"
      意義:
      • Xor="1" 表示除了 Package.cab 檔案以外,所有由 <Cab> 子元素定義的 CAB 檔案都已受到 bitwise NOT 運算的干擾。也就是說,除了 Package.cab 檔案以外,所有已定義的 CAB 檔案都已翻轉其內容的每一個位元的 1 和 0。這是為了省略某些用戶端電腦防毒軟體用於掃描這些 CAB 檔案的病毒所花費的時間,以增進 WUA 在處理掃描封裝方面的效能。
      • Xor="0" 表示所有由 <Cab> 子元素定義的 CAB 檔案,都沒有受到 bitwise NOT 運算的干擾。
    • <Cab> 元素
      Name 屬性 (字串)
      必要項目?是
      意義:由 <Cab> 元素定義的 CAB 檔案的檔案名稱。
      備註:
      • <CabList> 中定義的第一個 <Cab> 元素的值必須是 Package.cab

        注意 此值不需區分大小寫。
      • 一般而言,如果值為 Xor="1",則由 <Cab> 元素定義的第二個和第三個 CAB 檔案便會命名為 Package2.wu 和 Package3.wu,依此類推。如果元素存在,此情況便成立。
      • 一般而言,如果值為 Xor="0",則由 <Cab> 元素定義的第二個和第三個 CAB 檔案便會命名為 Package2.cab 和 Package3.cab,依此類推。如果元素存在,此情況便成立。
      RangeStart 屬性 (數字)
      必要項目?Package.cab 檔案為「否」,PackageVersionNumber.wu 檔案則為「是」
      預設值:(無)
      意義:
      • RevisionId 特定的檔案是 C、E、I 和 X 資料夾中的檔案。這些檔案可能會跨越在 <CabList> 元素中定義的一個以上的 CAB 檔案。然而,Wsusscn2.cab 規格要求所有專屬於特定 RevisionId 的檔案,必須只儲存在一個此類的 CAB 檔案中。RangeStart 屬性會記錄對應至 <Cab> 元素的 CAB 檔案所包含的 RevisionId 特定檔案的最低 RevisionId 值。
      • 沒有屬性值表示對應的 CAB 檔案中沒有儲存 RevisionId 特定的檔案。Package.cab 檔案的 <Cab> 元素通常不會指定 RangeStart 屬性值。
      備註:
      • 如果 RangeStart 屬性值出現在 Index.xml 檔案中列出的第一個 <Cab> 元素中,一定是 "0"
      • 如果在 <Cab> 元素中定義的 RangeStart 屬性值出現在 Index.xml 檔案中,就必須以遞增順序排列,且不得重疊。
      • 透過在 Index.xml 檔案中結合在 <Cab> 元素中定義的 RangeStart 屬性值,應用程式可以推算這些 CAB 檔案所涵蓋的連續、不重疊的 RevisionIds 範圍。對應至最後定義的 <Cab> 元素的 CAB 檔案的 RangeStart 屬性值包含所有 RevisionId 特定的檔案,從屬性值中指定的 RevisionId 值開始。
    • FilesDir 屬性 (數字)
      必要項目:否
      預設值:FilesDir="0"
      意義:
      • FilesDir="1" 指出對應至 <Cab> 元素的 CAB 檔案包含 Files 資料夾。
      • FilesDir="0" 指出對應至 <Cab> 元素的 CAB 檔案不包含 Files 資料夾。
      注意 只有一個 <Cab> 元素會指定 FilesDir="1"
  • Package.cab 檔案或 PackageVersionNumber.wu 檔案。這些檔案包含下列元件:
    • Package.xml
      Package.xml 檔案的格式及結構描述和 Wsusscan.cab 檔案中的 Package.cab 檔案相同。和舊格式一樣,此檔案仍然位於 Package.cab 檔案中。
    • C 資料夾
      C 資料夾包含和 Wsusscan.cab 檔案中的 Package.cab 檔案的 Core 資料夾相同類型的內容。和舊格式不同的是,C 資料夾跨越了一個或多個 Package.cab 或 PackageVersionNumber.wu CAB 檔案。這是取決於在 Index.xml 檔案中定義的對應的 <Cab> 元素中的 RangeStart 屬性值。
    • E 資料夾
      E 資料夾包含和 Wsusscan.cab 檔案中的 Package.cab 的 Eula 資料夾相同類型的內容。和舊格式不同的是,E 資料夾跨越了一個或多個 Package.cab 或 PackageVersionNumber.wu CAB 檔案,這是取決於對應的 <Cab> 元素中的 RangeStart 屬性值。這些元素是在 Index.xml 檔案中定義的。
    • Files 資料夾
      File 資料夾包含和 Wsusscan.cab 中的 Package.cab 的 Files 資料夾相同類型的內容。和舊格式不同的是,此資料夾是儲存在單一 Package.cab 或 PackageVersionNumber.wu CAB 檔案中。這是取決於對應的 <Cab> 元素中的 FilesDir 屬性值。此元素位於 Index.xml 檔案中。
    • I 資料夾
      I 資料夾包含和 Wsusscan.cab 檔案中的 Package.cab 檔案的 Localized 資料夾相同類型的內容。唯一的差別在於 Wsusscn2.cab 中沒有對應至非明確可配置、非配套軟體更新的檔案,以增進一般使用者電腦的效能。WUA 會在執行階段期間針對這些更新自動產生已移除的本地化內容。和舊格式不同的是,此資料夾跨越了一個或多個 Package.cab 或 PackageVersionNumber.wu CAB 檔案,這是取決於對應的 <Cab> 元素中的 RangeStart 屬性值。這些元素是在 Index.xml 檔案中定義的。
    • X 資料夾
      X 資料夾包含和 Wsusscan.cab 中的 Package.cab 的 Extended 資料夾相同類型的內容。和舊格式不同的是,X 資料夾跨越了一個或多個 Package.cab 或 PackageVersionNumber.wu CAB 檔案。這是取決於對應的 <Cab> 元素中的 RangeStart 屬性值。這些元素是在 Index.xml 檔案中定義的。
如需 WUA 的詳細資訊,請造訪下列網站:
http://msdn2.microsoft.com/en-us/library/aa387099.aspx (http://msdn2.microsoft.com/en-us/library/aa387099.aspx)

這篇文章中的資訊適用於:
  • Microsoft Baseline Security Analyzer 2.0
  • Microsoft Systems Management Server 2003 Enterprise Edition
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Datacenter x64 Edition
  • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Home Edition (家用版)
  • Microsoft Windows XP Tablet PC Edition
  • Microsoft Windows XP Professional x64 Edition
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Datacenter Server
關鍵字:?
kbhowto kbinfo KB927745
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。