將中繼資料套件新增到離線 Windows...

29
裝裝裝裝裝裝裝裝裝裝 2012 裝 9 裝 28 裝 摘摘 裝裝裝裝裝裝裝 Windows 7 裝 Windows 8 裝 裝裝裝裝裝 。,。、、 (DMRC) 裝 DMRC 裝裝裝裝 裝裝裝裝裝裝裝裝裝裝裝裝裝 Windows 8 Windows 7 裝裝裝裝裝裝裝裝裝裝裝裝裝裝裝裝裝裝裝裝裝裝裝 裝裝裝裝裝裝裝裝裝裝裝裝裝裝裝裝裝裝裝 裝裝裝裝裝裝裝裝裝裝 摘摘摘摘裝裝裝 ,, URL 裝裝裝裝 ,。,。 Microsoft 裝裝 。。 裝裝裝 ,,。 裝裝裝裝裝裝裝裝裝裝裝 Microsoft 裝裝 。。 © 2012 Microsoft.裝 裝 裝 ,一。

Transcript of 將中繼資料套件新增到離線 Windows...

Page 1: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線2012 年 9 月 28 日摘要本文說明如何為 Windows 7 與 Windows 8 裝置使用經驗功能安裝和使用裝置中繼資料套件。本文件是教學課程,也是參考指南。文件中提供如何安裝中繼資料套件的資訊、如何偵錯裝置中繼資料套件錯誤、裝置中繼資料擷取用戶端 (DMRC) 如何選取中繼資料套件,以及 DMRC 如何使用中繼資料快取。這個資訊適用於下列作業系統:

Windows 8 Windows 7

此處討論的參考資料和資源皆列在本白皮書的結尾處。您可以從下列網址取得本白皮書的目前版本: 裝置中繼資料套件管線

免責聲明:本文件是以原本的形式提供,本文件中所表達的資訊和觀點,包括 URL 及其他網際網路網站參考資料,如有變更恕不另行通知。部分資訊與發行前產品相關,而此產品可能會在正式發行前大幅修改。Microsoft 對於此處提供的資訊無任何明示或默示的瑕疵擔保責任。您應自行承擔使用本文件的風險。此處描述的部分範例僅供說明使用,純屬虛構,並無意圖亦不應將其影射為任何實際關聯或連接。本文件不會為您提供任何 Microsoft 產品的任何智慧財產權的任何法律權限。您可以在內部為了參考用途來複製及使用本文件。 © 2012 Microsoft.著作權所有,並保留一切權利。

Page 2: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 2

文件歷程記錄日期 變更2012 年 9 月 28 日 更新以反映新的品牌名稱2012 年 6 月 27 日 更新 ETW 事件相關資訊2012 年 4 月 9 日 更新 Windows 8 詞彙2012 年 2 月 28 日 針對 Windows 8 Consumer Preview 進行更新2010 年 1 月 22 日 請注意,來賓帳戶無法存取 WMIS 伺服器上的中繼資料套件。

針對安裝在比 Windows 7 還舊的 Windows 版本上的裝置,新增使用不同 INF DDInstall 區段的指導。新增關於 DMRC 裝置中繼資料快取的資訊。調整偵錯資訊以反映僅一個 [事件檢視器] 通道 (DeviceMetadata/Debug)。

2009 年 7 月 1 日 修正 XML 元素名稱2009 年 6 月 1 日 修正 INF 範例中有關 COPYFLG_NODECOMP 旗標的錯誤

新增<DMRC 如何選取裝置中繼資料套件>一節2008 年 11 月 5 日 第一次出版

目錄將中繼資料套件新增到離線 Windows 映像....................................................4在 Windows 的執行個體上安裝中繼資料套件................................................4

從 WMIS 伺服器安裝中繼資料套件.............................................................4使用應用程式來安裝中繼資料套件。..........................................................5使用驅動程式套件中的 INF 檔案來安裝中繼資料套件。.............................5

將裝置中繼資料套件套用到系統進行測試..........................................................7裝置中繼資料套件簽章和測試模式.....................................................................8DMRC 如何選取裝置中繼資料套件.....................................................................8DMRC 如何判斷是否要搜尋 WMIS 伺服器........................................................11

測試裝置中繼資料套件下載的最佳做法....................................................13裝置中繼資料套件安裝偵錯..............................................................................14檢查是否已安裝裝置中繼資料套件。............................................................14使用 Ddodiag.exe 偵錯裝置容器內容...........................................................14執行 Ddodiag.exe.....................................................................................14

使用 Windows 7 的 Windows 事件追蹤 (ETW) 來偵錯.................................16在 [事件檢視器] 中檢視裝置中繼資料/偵錯 ETW 事件..............................16裝置中繼資料/偵錯 ETW 事件...................................................................16

使用 Windows 8 的 Windows 事件追蹤 (ETW) 來偵錯.................................18在 [事件檢視器] 中檢視裝置中繼資料/偵錯 ETW 事件..............................18裝置中繼資料/偵錯 ETW 事件...................................................................19

使用問題報告偵錯 (行動作業中心)................................................................242012 年 9 月 28 日

© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 3: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 3

在行動作業中心檢視問題報告...................................................................24解譯問題報告............................................................................................24

決定裝置中繼資料相關的錯誤碼...................................................................25附錄..................................................................................................................26

使用 Windows 8 的 Windows 事件追蹤 (ETW) 來偵錯裝置設定...................26在 [事件檢視器] 中檢視裝置設定 ETW 事件..............................................26裝置設定 ETW 事件...................................................................................27

詞彙..................................................................................................................35資源..................................................................................................................36

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 4: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 4

裝置中繼資料套件安裝您可以將裝置中繼資料套件新增到離線 Windows 映像,或者您可以在 Windows 執行時安裝其他裝置中繼資料套件。

將中繼資料套件新增到離線 Windows 映像若要將裝置中繼資料套件新增到離線 Windows 映像,請將套件 (例如,GUID.devicemetadata-ms) 複製到本機中繼資料存放區 (%PROGRAMDATA%\Microsoft\Windows\DeviceMetadataStore\<locale>)。備註:

您必須根據本機中繼資料存放區內中繼資料套件的地區設定來建立 <locale> 資料夾,例如:%PROGRAMDATA%\Microsoft\Windows\DeviceMetadataStore\EN-US。將適當的地區設定中繼資料套件複製到子資料夾。例如,將 EN-US 中繼資料套件複製到 EN-US 子資料夾,然後將 EN 中繼資料套件複製到 EN 子資料夾。

多個地區設定裝置中繼資料套件也應該複製到地區設定資料夾。地區設定是定義在 packageinfo.xml,只用於裝置中繼資料套件載入 Windows 7 電腦時。例如,如果 packageinfo.xml 中的地區設定是 EN-US,就應該將套件複製到 EN-US 資料夾。

在 Windows 的執行個體上安裝中繼資料套件您可以使用三種不同方式在 Windows 的執行個體上安裝裝置中繼資料套件:

從 Windows Metadata and Internet Services (WMIS) 伺服器安裝中繼資料套件。

使用應用程式來安裝中繼資料套件。 使用驅動程式套件中的 INF 檔案 來安裝中繼資料套件 (我們不建議)。

這三種方法都使用相同的背景處理程序並將中繼資料套件複製到本機中繼資料存放區。從 WMIS 伺服器安裝中繼資料套件當 Windows 偵測到新裝置時,它會查詢 WMIS 線上伺服器,以取得裝置的中繼資料套件。如果有可用的裝置中繼資料套件,在本機電腦上執行的裝置中繼資料擷取用戶端 (DMRC) 會從 WMIS 伺服器下載套件,並在本機電腦上安裝套件。您可以在 [硬體開發] 的 [儀表板] 以及 Windows 開發人員中心的 [傳統型應用程式開發] 區域提交您的中繼資料。請參閱 http://msdn.microsoft.com/library/c71750f4-885f-425a-a3ad-29740a1cb0bb 以了解標誌需求以及它們是否適用於您的提交。在 [儀表板] 驗證您的中繼資料套件之後,該套件將提供給 WMIS 以處理 DMRC 在執行 Windows 7 的任何電腦上所提出的下載要求。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 5: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 5

若要使用硬體優先驅動程式安裝案例來支援裝置中繼資料套件安裝,我們建議您使用這種方法來提供中繼資料套件。附註:如果使用者使用來賓帳戶來存取電腦,DMRC 將無法從 WMIS 伺服器為該使用者抓取裝置中繼資料套件。 使用應用程式來安裝中繼資料套件。為了安裝中繼資料套件,您的應用程式或安裝應用程式應該遵循這些步驟:1. 呼叫 SHGetKnownFolderPath 以取得本機中繼資料存放區路徑。本機中

繼資料存放區的 knownfolderID 是 {5CE4A5E9-E4EB-479D-B89F-130C02886155}。

2. 呼叫 CopyFile,將中繼資料套件複製到本機中繼資料存放區。備註:

當您複製中繼資料套件時,必須擁有系統管理員權限。 也必須將中繼資料套件複製到正確的地區設定子資料夾。例如,將 ”EN-US” 的中繼資料套件複製到 %PROGRAMDATA%\Microsoft\Windows\DeviceMetadataStore\EN-US。

如果本機中繼資料存放區沒有地區設定的子目錄,應用程式必須建立它。如果您使用 CopyFile 函數,但是沒有地區設定的子目錄時,就會建立該資料夾。

使用驅動程式套件中的 INF 檔案來安裝中繼資料套件。附註:因為我們不支援使用 INF 檔案方法來安裝中繼資料套件,所以我們強烈建議您從 WMIS 伺服器安裝。不過,如果您選擇使用 INF 檔案,請充分閱讀本節,並確定您了解風險。若要從驅動程式套件安裝中繼資料套件,您的 INF 檔案會複製中繼資料套件。如需 INF 檔案的詳細資訊,請參閱 Windows 驅動程式套件 (WDK) 中的<INF 檔案>。 附註:如果您將驅動程式套件安裝在比 Windows 7 還舊的 Windows 版本上,則必須使用不同的 INF DDInstall 區段,來包含中繼資料相關的 INF 指示詞。您必須使用可為 Windows 7 指定 OSMajorVersion 與 OSMinorVersion 值的 TargetOSversion 裝飾,來指定 INF Models 區段中的這個區段名稱。如果您不想要為 Windows 7 使用不同的 DDInstall 區段,驅動程式套件安裝會顯示簽章警示,因為 COPYFLG_NODECOMP 不會在比 Windows 7 還舊的 Windows 版本上運作。如需建立裝飾 INF 區段的詳細資訊,請參閱 WDK 中的<為多個平台與作業系統建立 INF 檔案>。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 6: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 6

下列範例顯示 DestinationDirs 與 DDInstall 區段如何指定中繼資料套件作業的路徑:[SourceDisksNames]1 = %Media_Description%,,,\MetadataPackage ;[SourceDisksFiles.NTx86]GUID1.devicemetadata-ms= 1,, ;A metadata package file for EN-USGUID2.devicemetadata-ms= 1,, ;A metadata package file for AR-SAGUID3.devicemetadata-ms= 1,, ;A metadata package file for JA-JP[DestinationDirs]COPYMETADATA_EN-US = 24, \ProgramData\Microsoft\Windows\DeviceMetadataStore\EN-US ;COPYMETADATA_AR-SA = 24, \ProgramData\Microsoft\Windows\DeviceMetadataStore\AR-SA ;COPYMETADATA_JA-JP = 24, \ProgramData\Microsoft\Windows\DeviceMetadataStore\JA-JP ;...[DeviceInstall.NTx86]CopyFiles=COPYMETADATA_EN-USCopyFiles=COPYMETADATA_AR-SACopyFiles=COPYMETADATA_JA-JP[COPYMETADATA_EN-US]GUID1.devicemetadata-ms,,,0x00000800 ;COPYFLG_NODECOMP[COPYMETADATA_AR-SA]GUID2.devicemetadata-ms,,,0x00000800 ;COPYFLG_NODECOMP[COPYMETADATA_JA-JP]GUID3.devicemetadata-ms,,,0x00000800 ;COPYFLG_NODECOMP備註:

您必須將驅動程式套件中的所有中繼資料套件複製到本機裝置中繼資料存放區中的正確資料夾,才能支援動態地區設定變更。

請不要使用輔助安裝程式或類別安裝程式來複製中繼資料套件。 您必須在 CopyFIles 指示詞中指定 COPYFLG_NODECOMP 旗標。這個旗標確保能保留裝置中繼資料套件的二進位完整性,而且它可以在驅動程式套件已安裝時,避免解壓縮裝置中繼資料套件。

如果中繼資料套件是包含在將被簽署的驅動程式套件,您必須簽署中繼資料套件。

中繼資料套件安裝的任何失敗會造成驅動程式安裝也失敗。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 7: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 7

將裝置中繼資料套件套用到系統進行測試當您在使用者的系統安裝裝置時,會自動安裝裝置中繼資料套件。但是,當您將裝置中繼資料套件安裝到本機中繼資料存放區,然後複製裝置中繼資料套件以進行測試時,必須在 [裝置和印表機] 中按 F5 鍵。在這種情況下,請執行下列步驟:

1. 移至 [開始] 功能表。2. 輸入裝置和印表機。3. 按一下 [搜尋] 窗格中的 [設定]。4. 按一下 [裝置和印表機]。5. 按 F5 鍵。

附註:如果使用裝置中繼資料編寫工具或 WDK 驅動程式部署工具,則不需要按 F5 鍵,因為這些工具會自動重新整理裝置中繼資料資料庫。

裝置中繼資料套件簽章和測試模式若要套用到 Windows 市集裝置應用程式、專用裝置應用程式、Device Stage 和裝置自動播放,裝置中繼資料套件需要簽章 (使用者將從 WMIS 取得裝置中繼資料套件),或者您的系統必須處於測試模式 (用於測試)。如果要在將裝置中繼資料套件提交給 Microsoft 之前進行測試,您必須讓系統進入測試模式。若要讓您的電腦進入測試模式,請執行下列步驟:

1. 以提升的存取權限開啟命令提示字元。2. 執行 bcdedit -set testsigning on。3. 重新啟動系統。

當您的電腦進入測試模式時,會在桌面上看到「測試模式」。

DMRC 如何選取裝置中繼資料套件當使用者開啟 [裝置和印表機] 或是 Device Stage™ 使用者介面時,作業系統會啟動 DMRC 以搜尋其快取是否有裝置最適合且最新的中繼資料套件。DMRC 也會在 WMIS 伺服器上搜尋裝置較新的中繼資料套件。如果 DMRC 找到套件,它會下載套件並在電腦上安裝套件。如果 DMRC 最近曾查詢 WMIS 伺服器是否有裝置的中繼資料套件,它會使用裝置的快取中繼資料套件,而不搜尋較新的套件。如需詳細資訊,請參閱本文稍後的<DMRC 如何判斷是否要搜尋 WMIS 伺服器 >。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 8: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 8

DMRC 使用下列在中繼資料套件中指定的中繼資料 XML 元素,為裝置選取適當的套件。這些 XML 元素的順序可反映 DMRC 用來選取中繼資料套件的優先順序: 1. ModelID 和 ModelIDList2. HardwareID 和 HardwareIDList3. Locale4. LastModifiedDate當 DMRC 為裝置選取中繼資料套件時會遵循以下步驟:1. 如果裝置有型號識別碼,DMRC 會搜尋裝置中繼資料套件,以確定在套件的

ModelIDList XML 元素中的 ModelID 項目與裝置的型號識別碼值之間是否有符合項目。

2. 如果裝置沒有型號識別碼,DMRC 會搜尋裝置中繼資料套件,以確定在套件的 HardwareIDList XML 元素中的 HardwareID 項目與裝置的硬體識別碼之間是否有符合項目。

3. DMRC 會針對符合步驟 1 與 2 所述搜尋條件的裝置中繼資料套件建立清單。從這個清單中,DMRC 會搜尋清單項目,以確定套件的 Locale XML 元素以及在電腦上慣用的使用者地區設定清單之間是否有符合項目。如果在清單中沒有任何項目符合這個搜尋條件,DMRC 會搜尋裝置中繼資料套件的清單項目,是否包含將 default 屬性設定為 true 的 Locale XML 元素。如果 DMRC 找到符合的項目,它會選取該中繼資料套件。在 Windows 8 中,如果將多個地區設定旗標設定為 tue,則會將該裝置中繼資料套件視為符合地區設定的最高排名。

4. 如果 DMRC 在步驟 3 期間找到多個裝置中繼資料套件,它會選取具有 LastModifiedDate XML 元素且具有最新時戳的套件。

如需裝置中繼資料 XML 結構描述與元素的詳細資訊,請參閱在 Windows 開發人員中心 - 硬體網站上的如何為裝置和印表機建立裝置中繼資料套件。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 9: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 9

圖 1 顯示 DMRC 如何選取裝置中繼資料套件。開始

裝置是否回報型號識別碼?

任何中繼資料套件包含型號識別碼?

傳回「找不到中繼資料套件」

完成

不只一個中繼資料套件?

任何中繼資料套件包含裝置的硬體識別碼?

套件是否包含使用者地區設定?

不只一個中繼資料套件?

選擇包含最新 ‘ LastModifiedDate’

的套件

套件是否設定地區設定預設值?

傳回中繼資料套件

圖 1.DMRC 如何選取中繼資料套件備註:

如果 DMRC 選取的中繼資料套件是基於硬體識別碼,它會使用作業系統在驅動程式安裝期間所使用之相同排名的硬體識別碼。DMRC 會將更特定的硬體識別碼排在比較不特定的硬體識別碼之上。例如,下列硬體識別碼是依排名順序列出:

<HardwareID>DOID:USB\VID_XXXX&PID_YYYY&REV_0000</HardwareID><HardwareID>DOID:USB\VID_XXXX&PID_YYYY</HardwareID>

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 10: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 10

如需裝置容量中硬體識別碼的詳細資訊,請參閱在 Windows 開發人員中心 - 硬體網站上的<如何為裝置和印表機建立裝置中繼資料套件>。 裝置只有一個中繼資料套件應該將 Locale XML 元素的 default 屬性設定為 true。您應該在包含最高排名值的硬體識別碼之套件中,將此屬性設定為 True。

LastModifiedDate XML 元素用於為裝置選取較新版的裝置中繼資料套件並管理其版本。

如果在本機中繼資料存放區中有兩個或更多的裝置中繼資料套件其 ModelIDList、HardwareIDList、Locale 或 LastModifiedDate XML 元素包含相同的值,DMRC 只會為裝置選取其中一個值。請注意,DMRC 會以不具決定性的方式選取其中一個套件。

DMRC 如何判斷是否要搜尋 WMIS 伺服器若要減少使用者區域網路的網路流量,DMRC 會維護裝置中繼資料套件的快取。使用者開啟 [裝置和印表機] 時、自動播放啟動 Device Stage 時,或是在 Windows 8 中起始定期維護工作時,DMRC 會遵循這些步驟來判斷是否是時候該在 WMIS 伺服器中搜尋較新的中繼資料套件:1. 如果目標裝置的裝置識別碼未列在 DMRC 索引表格中,DMRC 會第一次搜尋

裝置的中繼資料套件。因此,DMRC 會查詢 WMIS 伺服器。2. 如果目標裝置的裝置識別碼列在 DMRC 索引表格中,則 DMRC 會計算是否

是時候該重新查詢 WMIS 伺服器: 如果 DMRC 之前已抓取裝置的裝置中繼資料套件,DMRC 會比較 CheckB

ackMDRetrieved 登錄機碼的值與今天的值減去 LastCheckedDate。如果 CheckBackMDRetrieved 值較小,DMRC 會查詢 WMIS 伺服器。

如果 DMRC 之前尚未抓取裝置的裝置中繼資料套件,DMRC 會比較 CheckBackMDNotRetrieved 登錄機碼的值與今天的值減去 LastCheckedDate。如果 CheckBackMDNotRetrieved 值較小,DMRC 會查詢 WMIS 伺服器。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 11: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 11

圖 2 摘要說明 DMRC 用來判斷何時查詢 WMIS 伺服器是否有中繼資料套件更新的演算法。

開始

之前是否查詢過裝置的中繼資料套件 ?(裝置硬體識別碼是否列在 DMRC 索引中?)

裝置是否有中繼資料套件?

今天 – LastCheckedDate > CheckBackMDRetrieved?

今天 – LastCheckedDate > CheckBackMDNotRetrieved?

查詢 WMIS 伺服器

完成

圖 2.DMRC 如何判斷是否要查詢 WMIS 伺服器以取得裝置中繼資料套件。下列清單說明在圖 2 中演算法所使用的值:

LastCheckedDate這個值指出 DMRC 查詢 WMIS 伺服器是否有裝置中繼資料的最近日期。這個日期不會反映 DMRC 是否已順利抓取中繼資料套件;它只會指出上次 DMRC 代表裝置查詢 WMIS 伺服器的時間。 CheckBackMDNotRetrieved 這個登錄值指出 DMRC 重新檢查 WMIS 伺服器是否有裝置的中繼資料之前需要等候的天數。這個值會套用到 DMRC 尚未從 WMIS 抓取中繼資料的裝置。路徑 HKCU\Software\Microsoft\Windows\CurrentVersion\DeviceMetadata機碼 CheckBackMDNotRetrieved值 0 至 256:REG_DWORD預設值 5

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 12: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 12

CheckBackMDRetrieved這個登錄值指出 DMRC 檢查是否有裝置的更新中繼資料之前需要等候的天數。這個值套用到 DMRC 之前已收到中繼資料的裝置。路徑 HKCU\Software\Microsoft\Windows\CurrentVersion\DeviceMetadata機碼 CheckBackMDRetrieved值 0 至 256:REG_DWORD預設值

8

附註:WMIS 控制 CheckBackMDRetrieved 與 CheckBackMDNotRetrieved 值。WMIS 團隊會根據網路狀況與載入平衡來選取值。WMIS 伺服器的每個回應都包含用戶端設定資料以及 DMRC 行為的控制項。 測試裝置中繼資料套件下載的最佳做法因為 DMRC 中繼資料快取的關係,WMIS 伺服器提供裝置中繼資料套件以及將該套件下載到用戶端系統時之間可能會發生延遲。若要測試裝置中繼資料套件的下載,您可以使用兩種方式來強制下載:

刪除裝置中繼資料快取資料夾 (%LOCALAPPDATA%\Local\Microsoft\Device Metadata\)。刪除這個資料夾會重設 LastCheckedDate 的值,並導致 DMRC 如同首次查詢般再次針對所有裝置來查詢 WMIS 伺服器。

在 Windows 8 中,裝置中繼資料快取位於 %PROGRAMDATA%\Microsoft\Windows\DeviceMetadataCache

將 CheckBackMDRetrieved 與 CheckBackMDNotRetrieved 登錄機碼設定為 0。當這些值設定為零時,DMRC 會立即為目標裝置查詢 WMIS 伺服器。請注意,每次 DMRC 從 WMIS 收到回應時,WMIS 會覆寫這些值。因此,如果 DMRC 在 WMIS 伺服器中查詢您的目標裝置之前,收到任何其他裝置的回應,這些參數就可能變更。

附註:只在您測試中繼資料套件時,才必須進行上述變更。您不應該提供使用者進行這些變更的任何工具,也不應該將這些強制機制告知使用者。

裝置中繼資料套件安裝偵錯下列各節提供偵錯裝置中繼資料套件安裝的相關資訊。

檢查是否已安裝裝置中繼資料套件。檢查 [裝置和印表機] 中的目標裝置圖示。如果 [裝置和印表機] 中列有您所指定的裝置圖示,則至少裝置中繼資料套件中的 DeviceInfo.xml 部分已正確安裝。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 13: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 13

使用 Ddodiag.exe 偵錯裝置容器內容如果您要偵錯裝置中繼資料套件問題或任何裝置內容問題,建議您使用 Ddodiag.exe。從 Windows 7 開始,Ddodiag.exe 就支援在裝置容器中列出所有裝置內容的值。執行 Ddodiag.exe依照下列步驟執行 Ddodiag.exe:

1. 啟動命令提示字元。2. 輸入 start /wait ddodiag.exe -o <Filename.xml>,然後按 Enter 鍵。3. 輸入 notepad.exe <Filename.xml>。

附註:xml 包含系統中裝置容器的所有內容。如果您正在調查特定的裝置問題,請在 XML 中尋找 HardwareID 或 ModelID,然後查看裝置容器的內容。如果您正在調查是否已設定指定的內容值,可試著在 XML 檔案中尋找值。 範例 1:知道目標裝置硬體識別碼時

1. 使用記事本或任何編輯器開啟 filename.xml。 2. 試著找出硬體識別碼 (例如,USB\VID_045E&amp;PID_0047)。3. 在 XML 檔案中尋找下列內容類型:<Property key="PKEY_Device_HardwareIds" type="VT_VECTOR | VT_LPWSTR" vectorCount="7"><Value>USB\VID_045E&amp;PID_0047&amp;REV_0300</Value><Value>HID\VID_045E&amp;PID_0047&amp;REV_0300</Value><Value>USB\VID_045E&amp;PID_0047</Value><Value>HID\VID_045E&amp;PID_0047</Value><Value>HID_DEVICE_SYSTEM_MOUSE</Value><Value>HID_DEVICE_UP:0001_U:0002</Value><Value>HID_DEVICE</Value></Property>

4. 內容元素應為 DDO 元素的子元素。(例如 <DDO instanceId="DDO:{FF5614B9-6CB3-11E1-AAB0-806E6F6E6963}">)。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 14: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 14

5. 在 DDO 元素中,查看您在裝置中繼資料套件中設定的資訊。如果已設定值,則裝置中繼資料套件已正確完成安裝。

下列是內容值 (圖示名稱) 的範例:<Property key="PKEY_DeviceDisplay_Icon" type="VT_LPWSTR"><Value>%programdata%\microsoft\windows\devicemetadatacache\dmrccache\en-us\2ec2ef3b-83d2-4f5d-afa3-31aec5a379dd\DeviceInformation\IntelliMouseExplorer3.0.ico</Value></Property>

範例 2:知道容器中應設定的值時1. 使用記事本或任何編輯器開啟 filename.xml。 2. 試著找出值 (例如 Microsoft.Samples.PrinterExtensionCS)。3. 如果找不到任何值,表示值尚未設定,請檢查裝置中繼資料套件資訊,

例如硬體識別碼、套件簽章等。下列是內容值 (應用程式的套件名稱) 的範例:<Property key="51236583-0c4a-4fe8-b81f-166aec13f510, 101" type="VT_VECTOR | VT_LPWSTR" vectorCount="1"><Value>Microsoft.Samples.PrinterExtensionCS</Value></Property>

使用 Windows 7 的 Windows 事件追蹤 (ETW) 來偵錯如果您要偵錯裝置中繼資料套件問題,我們建議您使用 [事件檢視器]。從 Windows 7 開始,Windows 的事件追蹤 (ETW) 服務就支援用於處理裝置中繼資料套件相關事件的 DeviceMetadata/Debug 通道。在 [事件檢視器] 中檢視裝置中繼資料/偵錯 ETW 事件請遵循以下步驟以在 [事件檢視器] 中檢視裝置中繼資料事件:1. 在 [開始] 功能表上,以滑鼠右鍵按一下 [電腦],然後選取 [管理]。2. 展開 [系統工具] 節點。3. 展開並選取 [事件檢視器] 節點。4. 在 [檢視] 功能表上,按一下 [顯示分析與偵錯記錄檔]。5. 依序展開 [應用程式及服務記錄檔] 節點、[Microsoft] 節點、[Windows] 節點,然後展開 [UserPnP] 節點。

6. 選取 [DeviceMetadata/Debug] 節點。2012 年 9 月 28 日

© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 15: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 15

附註:為了接收和檢視事件,您必須在 DeviceMetadata/Debug ETW 通道上啟用記錄。以滑鼠右鍵按一下 [DeviceMetadata/Debug] 節點,選取 [內容],然後核取名稱為 [EnableLogging] 的方塊。

裝置中繼資料/偵錯 ETW 事件作業系統會在下載期間或是裝置中繼資料套件的處理期間,記錄下列錯誤、警告和資訊事件。事件識別碼:7900 錯誤:裝置中繼資料套件錯誤。使用裝置中繼資料套件的其中一個元件來偵測錯誤。這個事件記錄檔訊息包含下列資訊:

錯誤的描述。裝置中繼資料套件的來源,它是 DeviceMetadataStore 或 DeviceMetadataCache。如需詳細資訊,請參閱本章節後面的<詞彙>。 裝置中繼資料套件的名稱。 應用程式特定錯誤碼。如需這些錯誤碼的詳細資訊,請參閱本文稍後的<決定裝置中繼資料相關的錯誤碼>。

Win32 錯誤碼。事件識別碼:7901 資訊:從 WMIS 下載的裝置中繼資料套件。DMRC 從 WMIS 下載的裝置中繼資料套件,可從套件解壓縮元件,再於裝置中繼資料快取中儲存它們。這個事件記錄檔訊息包含下列資訊:

事件的描述。 裝置中繼資料快取中已解壓縮的裝置中繼資料套件的位置。 裝置中繼資料套件的名稱。

事件識別碼:7902 錯誤:裝置中繼資料套件未簽署。儀表板未簽署的已安裝裝置中繼資料套件。附註:裝置中繼資料套件的簽章只在從 WMIS 下載時才會驗證。這個事件記錄檔訊息包含下列資訊:

錯誤的描述。 裝置中繼資料套件的名稱。 應用程式特定錯誤碼。如需這些錯誤碼的詳細資訊,請參閱本文稍後的<決定裝置中繼資料相關的錯誤碼>。

Win32 錯誤碼。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 16: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 16

事件識別碼:7950 資訊:在本機中繼資料存放區中探索的新裝置中繼資料套件。DMRC 已偵測到本機電腦上安裝的新裝置中繼資料套件。這個事件記錄檔訊息包含下列資訊:

事件的描述。 裝置中繼資料套件的來源,可以是裝置中繼資料存放區或是裝置中繼資

料快取。如需詳細資訊,請參閱本文後面的<詞彙>。 裝置中繼資料套件的名稱。

事件識別碼:7951 資訊:查詢進行中的中繼資料套件。DMRC 會查詢特定裝置的已安裝裝置中繼資料套件。這個事件記錄檔訊息包含下列資訊:

事件的描述。 裝置對應機碼,例如,裝置的硬體識別碼或型號識別碼。附註:將硬體識別碼的清單以參數傳遞時,只會記錄最特定的硬體識別碼。

事件識別碼:7952 警告:網路相關錯誤。DMRC 從 WMIS 下載裝置中繼資料套件期間發生網路錯誤。附註:如果網路無法使用,就不會產生這個警告。這個事件記錄檔訊息包含下列資訊:

詳細的錯誤描述。 應用程式特定錯誤碼。 發生網路錯誤時的 HTTP 狀態代碼。

使用 Windows 8 的 Windows 事件追蹤 (ETW) 來偵錯如果您要偵錯裝置中繼資料套件問題,我們建議您使用 [事件檢視器]。從 Windows 7 開始,Windows 的事件追蹤 (ETW) 服務就支援用於處理裝置中繼資料套件相關事件的 DeviceMetadata/Debug 通道。在 [事件檢視器] 中檢視裝置中繼資料/偵錯 ETW 事件請遵循以下步驟以在 [事件檢視器] 中檢視裝置中繼資料事件:

1. 在 [開始] 功能表上,輸入事件檢視器,然後在 [搜尋] 窗格中選取設定。2. 按一下 [檢視事件記錄檔]。3. 在 [檢視] 功能表上,按一下 [顯示分析與偵錯記錄檔]。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 17: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 17

4. 依序展開 [應用程式及服務記錄檔] 節點、[Microsoft] 節點、[Windows] 節點,然後展開 [UserPnP] 節點。

5. 選取 [DeviceMetadata/Debug] 節點。附註:為了接收和檢視事件,您必須在 DeviceMetadata/Debug ETW 通道上啟用記錄。以滑鼠右鍵按一下 [DeviceMetadata/Debug] 節點,選取 [內容],然後核取名稱為 [EnableLogging] 的方塊。

裝置中繼資料/偵錯 ETW 事件作業系統會在下載期間或是裝置中繼資料套件的處理期間,記錄下列錯誤、警告和資訊事件。

事件識別碼:7804 資訊:DMRC 開始搜尋本機索引。DMRC 開始在本機快取搜尋裝置中繼資料套件。 訊息:開始:搜尋本機索引以取得中繼資料套件

事件識別碼:7805 資訊:DMRC 停止搜尋本機索引。DMRC 停止在本機快取搜尋裝置中繼資料套件。 訊息:停止:搜尋本機索引以取得中繼資料套件

事件識別碼:7806 資訊:DMRC 開始解壓縮套件。DMRC 開始解壓縮裝置中繼資料套件。 訊息:開始:解壓縮中繼資料套件放入快取

事件識別碼:7807 資訊:DMRC 停止解壓縮套件。DMRC 停止解壓縮裝置中繼資料套件。 訊息:停止:解壓縮中繼資料套件放入快取

事件識別碼:7808 資訊:DMRC 開始 Parse_PackageInfo。DMRC 開始剖析 packageinfo.xml。 訊息:開始:剖析中繼資料內容的 packageinfo.xml

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 18: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 18

事件識別碼:7809 資訊:DMRC 停止 Parse_PackageInfo。DMRC 停止剖析 packageinfo.xml。 訊息:停止:剖析中繼資料內容的 packageinfo.xml

事件識別碼:7810 資訊:DMRC 開始 Scan_LocalStore。DMRC 開始掃描本機中繼資料存放區的中繼資料套件。 訊息:開始:掃描本機存放區以取得新的中繼資料套件

事件識別碼:7811 資訊:DMRC 停止 Scan_LocalStore。DMRC 停止掃描本機中繼資料存放區的中繼資料套件。 訊息:停止:掃描本機存放區以取得新的中繼資料套件

事件識別碼:7812 資訊:DMRC 開始初始化。DMRC 開始初始化處理程序。 訊息:開始:初始化 DMRC

事件識別碼:7813 資訊:DMRC 停止初始化。DMRC 停止初始化。 訊息:停止:初始化 DMRC

事件識別碼:7814 資訊:DMRC 開始解除初始化。DMRC 開始解除初始化。 訊息:開始:解除初始化 DMRC

事件識別碼:7815 資訊:DMRC 停止解除初始化。DMRC 停止解除初始化。 訊息:停止:解除初始化 DMRC

事件識別碼:7900 錯誤:裝置中繼資料套件錯誤。使用裝置中繼資料套件的其中一個元件來偵測錯誤。這個事件記錄檔訊息包含下列資訊:

錯誤的描述。裝置中繼資料套件的來源,它是 DeviceMetadataStore 或 DeviceMetadataCache。如需詳細資訊,請參閱本章節後面的<詞彙>。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 19: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 19

裝置中繼資料套件的名稱。 應用程式特定錯誤碼。如需這些錯誤碼的詳細資訊,請參閱本文稍後的<決定裝置中繼資料相關的錯誤碼>。

Win32® 錯誤碼。0x50000011無法解壓縮中繼資料套件 套件名稱的檔案名稱驗證失敗

0x50000021無法開啟 PackageInfo 無法開啟 DeviceInfo無法開啟 WindowsInfo無法開啟 ServiceInfo無法開啟 SoftwareInfo

0x50000022無法剖析 PackageInfo 無法剖析 DeviceInfo無法剖析 WindowsInfo無法剖析 ServiceInfo無法剖析 SoftwareInfo

事件識別碼:7901 資訊:從 WMIS 下載的裝置中繼資料套件。DMRC 從 WMIS 下載的裝置中繼資料套件,可從套件解壓縮元件,再於裝置中繼資料快取中儲存它們。這個事件記錄檔訊息包含下列資訊:

訊息:已經從 WMIS 下載新的裝置中繼資料套件。 裝置中繼資料快取中已解壓縮的裝置中繼資料套件的位置。 裝置中繼資料套件的名稱。

事件識別碼:7902 錯誤:裝置中繼資料套件未簽署。儀表板未簽署的已安裝裝置中繼資料套件。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 20: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 20

附註:裝置中繼資料套件的簽章只在從 WMIS 下載時才會驗證。這個事件記錄檔訊息包含下列資訊:

錯誤的描述。 裝置中繼資料套件的名稱。 應用程式特定錯誤碼。如需這些錯誤碼的詳細資訊,請參閱本文稍後的<決定裝置中繼資料相關的錯誤碼>。

Win32 錯誤碼。

事件識別碼:7903 資訊:DMRC 剖析裝置中繼資料。DMRC 完成剖析裝置中繼資料套件。這個事件記錄檔訊息包含下列資訊: 訊息:已順利剖析裝置中繼資料檔案。 裝置中繼資料快取中已解壓縮的裝置中繼資料套件的位置。 裝置中繼資料套件的名稱。 語言

事件識別碼:7950 資訊:在本機中繼資料存放區中探索的新裝置中繼資料套件。DMRC 已偵測到本機電腦上安裝的新裝置中繼資料套件。這個事件記錄檔訊息包含下列資訊:

事件的描述。 裝置中繼資料套件的來源,可以是裝置中繼資料存放區或是裝置中繼資

料快取。如需詳細資訊,請參閱本文後面的<詞彙>。 裝置中繼資料套件的名稱。

事件識別碼:7951 資訊:查詢進行中的中繼資料套件。DMRC 會查詢特定裝置的已安裝裝置中繼資料套件。這個事件記錄檔訊息包含下列資訊:

事件的描述。 裝置對應機碼,例如,裝置的硬體識別碼或型號識別碼。附註:將硬體識別碼的清單以參數傳遞時,只會記錄最特定的硬體識別碼。

事件識別碼:7952 警告:網路相關錯誤。DMRC 從 WMIS 下載裝置中繼資料套件期間發生網路錯誤。附註:如果網路無法使用,就不會產生這個警告。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 21: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 21

這個事件記錄檔訊息包含下列資訊: 詳細的錯誤描述。 應用程式特定錯誤碼。 發生網路錯誤時的 HTTP 狀態代碼。

使用問題報告偵錯 (行動作業中心)Windows 7 會將裝置中繼資料套件錯誤 (錯誤碼 0x50000xx) 的報告 傳送到 Windows 錯誤報告 (WER) 伺服器。行動作業中心會列出將傳送或是已經傳送的錯誤。這些報告為您的裝置中繼資料套件提供偵錯資訊。在行動作業中心檢視問題報告請遵循以下步驟在行動作業中心檢視問題報告:1. 在 [開始] 功能表輸入「檢視所有問題報告」,再按 ENTER。2. 選取您要檢閱的問題報告。報告中包含錯誤的詳細資訊。您可以在 [事件檢視器] 中找到相同的資訊:1. 啟動 [事件檢視器]。2. 展開 [Windows 記錄] 節點。3. 以滑鼠右鍵按一下 [應用程式],然後選取 [篩選目前的記錄]。4. 在 [事件識別碼] 文字方塊中輸入 ”1001”,然後按一下 [確定]。 [事件識別碼] 文字方塊是對話方塊中間無標籤的文字方塊,其預設內容為 “<所有事件識別碼>”。解譯問題報告每個裝置中繼資料抓取用戶端問題報告包含下列資訊:1. 應用程式特定錯誤碼。如需這些錯誤碼的詳細資訊,請參閱本文稍後的<決定裝置中繼資料相關的錯誤碼>。

2. Win32 錯誤碼。3. 裝置中繼資料套件的來源,可以是裝置中繼資料存放區或是裝置中繼資料快

取。如需詳細資訊,請參閱本文稍後的<詞彙>。4. 裝置中繼資料套件的名稱。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 22: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 22

決定裝置中繼資料相關的錯誤碼從 Windows 7 開始,作業系統會記錄與下載和處理裝置中繼資料套件相關事件中的下列錯誤碼。這些事件是由 ETW 服務管理,而且可以使用 [事件檢視器] 來檢視。

WMIS 伺服器錯誤 (200000xx):21:要求不包含裝置中繼資料要求。22:要求批次大小超過最大許可值。23:無效的地區設定值。24:要求不包含有效的標頭資訊。25:無效的要求格式。31:處理要求時在服務端發生錯誤。 DMRC 本機錯誤 (0x400000xx):本機中繼資料快取損毀:

11:沒有本機中繼資料快取。12:本機中繼資料快取中的結構 (資料夾) 不正確。

本機中繼資料存放區損毀:21:沒有本機中繼資料存放區。22:本機中繼資料存放區中的結構 (資料夾) 損毀。

索引損毀:31:索引遺失。32:索引損毀。

裝置中繼資料套件錯誤 (0x500000xx):Cab 檔錯誤:

11:Cab 檔損毀。12:Cab 檔沒有正確的結構。

PackageInfo.xml 錯誤:21:PackageInfo.xml 遺失。22:PackageInfo.xml 的格式不正確 (無法剖析)。

附註:錯誤碼 22 指出 PackageInfo.xml 文件遺失必要的元素,或是根據 PackageInfo XML 結構描述的語法,一或多個其元素無效。

DeviceInfo.xml 錯誤:31:DeviceInfo.xml 遺失。32:DeviceInfo.xml 的格式不正確 (無法剖析)。33:DeviceInfo.xml 遺失必要的元素。34:根據 XML 結構描述定義,DeviceInfo.xml 中的元素無效。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 23: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 23

WindowsInfo.xml 錯誤:41:WindowsInfo.xml 遺失。42:WindowsInfo.xml 的格式不正確 (無法剖析)。43:WindowsInfo.xml 遺失必要的元素。44:根據 XML 結構描述定義,WindowsInfo.xml 中的元素無效。

網路錯誤:WMIS 查詢 (0x70000xxx):503:WMIS 伺服器忙碌中,而且無法服務要求。

如需 HTTP 錯誤的詳細資訊,請參閱本文結尾的<資源>。408:WMIS 伺服器並未發生問題,但是要求已逾時。500:WMIS 伺服器傳回內部錯誤,但是錯誤 XML 沒有詳細的錯誤碼。

BITS 錯誤:如需 BITS 錯誤的詳細資訊,請參閱 MSDN® 上的<BITS 傳回值>。

附錄使用 Windows 8 的 Windows 事件追蹤 (ETW) 來偵錯裝置設定

如果您要偵錯裝置設定問題,其中包含裝置中繼資料套件安裝,建議您使用 [事件檢視器]。從 Windows 8 開始,Windows 事件追蹤 (ETW) 服務就支援裝置設定相關事件的通道。在 [事件檢視器] 中檢視裝置設定 ETW 事件請遵循以下步驟以在 [事件檢視器] 中檢視裝置中繼資料事件:1. 在 [開始] 功能表上,輸入事件檢視器,然後在 [搜尋] 窗格中選取設定。2. 按一下 [檢視事件記錄檔]。3. 在 [檢視] 功能表上,按一下 [顯示分析與偵錯記錄檔]。4. 依序展開 [應用程式及服務記錄檔] 節點、[Microsoft] 節點、[Windows] 節點,然後展開 [DeviceSetupManager] 節點。

5. 選取 [管理] 節點或 [偵錯] 節點,查看記錄。6. 附註:為了接收和檢視 [偵錯] 節點事件,您必須在偵錯通道上啟用記錄。

以滑鼠右鍵按一下 [偵錯] 節點,選取 [內容],然後核取名稱為 [EnableLogging] 的方塊。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 24: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 24

裝置設定 ETW 事件作業系統會在下載期間或是裝置中繼資料套件的處理期間,記錄下列錯誤、警告和資訊事件。

管理節點下列是會記錄在管理節點的事件。

事件識別碼:100 資訊:DSMServiceStartup。裝置軟體管理員服務開始。這個事件記錄檔訊息包含下列資訊: 訊息:DSM 服務已啟動 模式資訊

o 標準o 暫停o 安裝o OOBE

DSM 工作階段上次執行的時間。

事件識別碼:101 資訊:DSMServiceShutdown。裝置軟體管理員服務結束。這個事件記錄檔訊息包含下列資訊: 訊息:DSM 服務正在關閉。 服務存留時間 (DSM 服務存留多久的時間)。 作用中工作時間 (DSM 工作多久的時間)。

事件識別碼:104 錯誤:DsmServiceStartupFailed。DSM 無法啟動。這個事件記錄檔訊息包含下列資訊: 訊息:DSM 服務無法啟動。 Win32 錯誤碼

事件識別碼:105 資訊:RetrySequenceStart。DSM 發生錯誤並開始重試順序。這個事件記錄檔訊息包含下列資訊: 訊息:DSM 服務正在進入重試順序,因為發生軟體 (可重試的) 錯誤。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 25: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 25

事件識別碼:106 資訊:RetrySequenceStop。DSM 離開重試順序。這個事件記錄檔訊息包含下列資訊: 訊息:DSM 服務正在離開重試狀態 這個工作階段的重試循環次數 (DSM 在工作階段中嘗試重試的次數)。

事件識別碼:109 資訊:DsmCoreServiceMode。DSM 進入服務模式。這個事件記錄檔訊息包含下列資訊: 訊息:DSM 服務已進入服務模式 模式資訊

o 標準o 暫停o 安裝o OOBE

事件識別碼:112 資訊:DeviceJobQueueComplete。 DSM 完成裝置工作佇列。這個事件記錄檔訊息包含下列資訊: 裝置名稱 容器識別碼 工作階段中處理的工作數目 更新的內容數目 作用中工作時間 (DSM 工作多久的時間)。

事件識別碼:120 資訊:DriverPackageDownloaded。DSM 從 Windows Update 下載驅動程式。這個事件記錄檔訊息包含下列資訊:

訊息:已從 Windows Update 下載驅動程式更新 驅動程式套件識別碼 下載時間 (下載驅動程式花費多久的時間)。

事件識別碼:121 錯誤:DriverInstallFailed。驅動程式安裝失敗。這個事件記錄檔訊息包含下列資訊: 訊息:驅動程式安裝失敗

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 26: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 26

Devnode 識別碼 Win32 錯誤碼

事件識別碼:122 警告:DriverInstallBlockedByWUPolicy。WU 選擇加入原則的緣故,驅動程式安裝失敗。使用者或群組原則選擇退出 WU 驅動程式下載。

訊息:原則禁止存取 Windows Update 上的驅動程式

事件識別碼:123 警告:DriverInstallDelayed。DSM 服務已延遲。這個事件記錄檔訊息包含下列資訊: 訊息:DSM 服務已延遲 延遲時間 (延遲發生多久的時間。) 裝置識別碼

事件識別碼:124 資訊:DriverInstalled。已順利安裝驅動程式。這個事件記錄檔訊息包含下列資訊: 驅動程式套件識別碼 裝置執行個體識別碼 安裝時間 (安裝驅動程式花費多久的時間)

事件識別碼:125 警告:DriverInstallBlockedByPnpPolicy。PnP 原則的緣故,驅動程式安裝失敗。這個事件記錄檔訊息包含下列資訊: 訊息:在裝置上安裝驅動程式的動作已由 PnP 限制原則封鎖 Devnode 識別碼

事件識別碼:130 警告:MetadataStagingSucceeded。已暫存裝置容器的裝置中繼資料套件。這個事件記錄檔訊息包含下列資訊: 訊息:已針對容器暫存中繼資料套件 裝置中繼資料套件名稱 裝置容器識別碼 暫存時間 (暫存裝置中繼資料套件花費多久的時間)。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 27: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 27

事件識別碼:131 錯誤:MetadataStagingFailed。中繼資料暫存失敗。這個事件記錄檔訊息包含下列資訊: 訊息:中繼資料暫存失敗 裝置容器識別碼 Win32 錯誤碼

事件識別碼:150 資訊:DeviceRemovalSucceeded。已順利移除裝置。這個事件記錄檔訊息包含下列資訊: 訊息:裝置已移除。 裝置名稱 容器識別碼

事件識別碼:151 錯誤:DeviceRemovalTimeout。無法移除裝置。這個事件記錄檔訊息包含下列資訊: 訊息:裝置無法回應裝置移除要求。 裝置名稱 容器識別碼

事件識別碼:152 錯誤:DevnodeRemovalFailure。無法移除 Devnode。這個事件記錄檔訊息包含下列資訊: 訊息:移除裝置節點失敗。 Devnode 名稱 錯誤碼

事件識別碼:200 警告:NoConnectionToWu。系統沒有與 Windows update 連線。 訊息:無法建立與 Windows Update 服務的連線。

事件識別碼:201 警告:NoConnectionToWmis。系統沒有與 Windows Metadata and Internet Services 連線。 訊息:無法建立與 Windows Metadata and Internet Services (WMIS)

的連線。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 28: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 28

事件識別碼:202 警告:NoConnectionToInternet。系統沒有與網際網路連線。 訊息:「網路清單管理員」報告沒有網際網路連線。

事件識別碼:203 資訊:NetworkAvailable。系統沒有與網際網路連線。 訊息:「網路清單管理員」報告沒有網際網路連線。

偵錯節點事件識別碼:102 資訊:DSMServiceDllLoad。DSM 服務 dll 已載入。

訊息:DSM 服務 dll 已載入。

事件識別碼:103 資訊:DSMServiceDllUnload。DSM 服務 dll 正在解除載入。 訊息:DSM 服務 dll 正在解除載入。

事件識別碼:108 資訊:DsmCoreServiceState。DSM 進入服務狀態。這個事件記錄檔訊息包含下列資訊: 訊息:DSM 服務已進入服務狀態 狀態資訊

o 初始化o 閒置o 處理中o 重置擱置中o 關機

事件識別碼:110 資訊:DsmJobStarted。裝置容器的 DSM 工作已啟動。這個事件記錄檔訊息包含下列資訊: 訊息:已針對裝置容器啟動工作 容器識別碼 工作識別碼 工作模式

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 29: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 29

o StartDeviceInstallo InstallDriverso RunHeuristicso InstallMetadatao Removeo 重新整理o RefreshProperty

事件識別碼:111 資訊:DsmJobComplete。DSM 完成裝置容器的工作。這個事件記錄檔訊息包含下列資訊: 訊息:已針對裝置容器完成工作 容器識別碼 工作識別碼 工作狀態

o 完成o 需要重新啟動o 軟體錯誤o 硬體錯誤o 內部錯誤o 已由使用者原則封鎖o 已由系統原則封鎖o 已取消

事件識別碼:220 資訊:DsmRegisteredBackgroundTask。DSM 已登錄裝置容器的背景工作。這個事件記錄檔訊息包含下列資訊: 訊息:已經為應用程式登錄處理常式,以處理來自裝置容器的通知。 裝置容器識別碼 應用程式套件全名 通知處理常式名稱

事件識別碼:221 資訊:DsmBackgroundTaskAlreadyRegistered。背景工作已經登錄。這個事件記錄檔訊息包含下列資訊: 訊息:已經為裝置容器登錄應用程式的處理常式。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 30: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 30

裝置容器識別碼 應用程式套件全名

事件識別碼:222 資訊:DsmRegisterErrorBackgroundTask。無法登錄背景工作。這個事件記錄檔訊息包含下列資訊:訊息:裝置容器與應用程式指定背景工作資訊,但我們無法登錄,錯誤為。裝置容器識別碼應用程式套件全名Win32 錯誤碼

事件識別碼:223 資訊:DsmUnregisterPrintBackgroundTask。解除安裝應用程式之後,解除登錄列印背景工作。這個事件記錄檔訊息包含下列資訊:

訊息:已在解除安裝應用程式之後針對列印背景工作解除登錄。 應用程式套件全名

事件識別碼:224 資訊:DsmUnregisterMobileOperatorBackgroundTask。解除安裝應用程式之後,解除登錄行動式寬頻背景工作。這個事件記錄檔訊息包含下列資訊:

訊息:已在解除安裝應用程式之後針對電信業者背景工作解除登錄。 應用程式套件全名

詞彙DMRC

裝置中繼資料擷取用戶端,用以管理 Windows 7 中的裝置中繼資料操作。WMIS係指 Windows Metadata and Internet Services,它會服務透過網際網路合作夥伴提交到 [儀表板] 的裝置中繼資料套件。Windows 開發人員中心 - 硬體儀表板

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 31: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 31

這個網站可讓您的硬體裝置與軟體應用程式符合 Microsoft Logo Program 的資格。您可以在 Windows Product Listing 網站上提供您產品的相關資訊、在 Windows Update 上更新您的驅動程式發佈設定、擷取使用者當機資料、以及提交裝置中繼資料套件。如需詳細資訊,請參閱本文結尾的<資源>。

裝置中繼資料存放區%programdata%\Microsoft\Windows\DeviceMetadataStore\使用者或應用程式在本機系統上安裝套件時,複製裝置中繼資料套件的目標資料夾。

裝置中繼資料快取%localappdata%\Local\Microsoft\Device Metadata\

%PROGRAMDATA%\Microsoft\Windows\DeviceMetadataStore (在 Windows 8 中)

DMRC 快取已解壓縮的裝置中繼資料套件的資料夾。所有已解壓縮的裝置中繼資料套件 (例如從 WMIS 下載的裝置中繼資料套件或是安裝到本機裝置中繼資料存放區的裝置中繼資料套件) 都會儲存在這個資料夾。

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。

Page 32: 將中繼資料套件新增到離線 Windows 映像download.microsoft.com/download/F/5/C/F5C8228B-4C75-46D2... · Web view裝置中繼資料套件管線 - 4 2012 年 9 月 28 日©

裝置中繼資料套件管線 - 32

資源MSDN

BITS 傳回值http://msdn.microsoft.com/zh-tw/library/aa362823(VS.85).aspx

CopyFile 函數http://msdn2.microsoft.com/zh-tw/library/aa363851.aspx

Windows 開發人員中心 - 硬體網站如何為裝置和印表機建立裝置中繼資料套件 http://msdn.microsoft.com/zh-tw/library/windows/hardware/gg463145.aspx

Windows 驅動程式套件裝置和驅動程式安裝 http://msdn2.microsoft.com/zh-tw/library/aa972910.aspx

為多個平台與作業系統建立 INF 檔案http://msdn.microsoft.com/zh-tw/library/ff540206.aspx

INF 檔http://msdn.microsoft.com/zh-tw/library/ff547402.aspx

10 個狀態碼定義http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10

2012 年 9 月 28 日© 2012 Microsoft Corporation.著作權所有,並保留一切權利。