如何啟用 COM + 和 COM 的診斷追蹤

適用於: Windows Server 2008 EnterpriseWindows Server 2008 Enterprise without Hyper-VWindows Server 2008 Datacenter without Hyper-V

警告除非 Microsoft 支援人員聯繫指示的追蹤資訊來診斷問題的需要,您不應該啟用追蹤功能,在生產系統上。電腦的效能可能會受到影響。一旦找到和解決問題的原因,您應該停用追蹤功能。預設的情況下,會停用追蹤功能。因此,沒有任何效能影響在一般的安裝。

簡介


事件追蹤的視窗 (ETW) 提供一個機制,來追蹤和記錄使用者模式應用程式和核心模式驅動程式所引發的事件。在 Windows Server 2003 Service Pack 2 (SP2)、 在 Windows Vista 中,或較新的 Windows 作業系統,您可以使用 ETW 追蹤事件某些 COM + 元件,以及某些基底的 COM 元件也可以。COM 追蹤可以協助您疑難排解與權限、 啟動過程中或註冊程序相關的問題。追蹤機制會產生的二進位檔案。Microsoft 必須格式化二進位檔案,這樣就可以分析。您會發現下列 COM + 和 COM 提供者:
  • COMSVCS
  • COMADMIN
  • DCOMSCM (RPCSS)
  • OLE32
本文說明如何啟用與 COM + 和 Windows Server 2003 SP2,Windows Vista 中,較新的 Windows 作業系統中的 COM 元件收集診斷的追蹤輸出。

其他相關資訊


COMSVCS、 COMADMIN 和 DCOMSCM 的提供者開始追蹤

若要啟動 COMSVCS,COMADMIN,DCOMSCM 提供者的追蹤],請在命令提示字元,視執行其中一個下列的命令:
logman-啟動 comsvcs-p {B46FA1AD-B22D-4362-B072-9F5BA07B046D} 0xf 0x5-etslogman-啟動 comadmin-p {A0C4702B-51F7-4ea9-9C74-E39952C694B8} 0xf 0x5-etslogman-啟動 dcomscm-p {9474a749-a98d-4f52-9f45-5b20247e4f01} 0x7 0x5-ets

開始追蹤 OLE32 提供者

重要 此章節、方法或工作包含有關如何修改登錄的步驟。 然而,不當修改登錄可能會發生嚴重的問題。 因此,請務必謹慎地依照這些步驟執行。 為加強保護,請先備份登錄再進行修改。 這樣一來,如果發生問題,您就可以還原登錄。 如需有關如何備份和還原登錄的詳細資訊,請按以下的文章編號,檢視「Microsoft 知識庫」中的文章:
322756 如何在 Windows 中備份及還原登錄
根據預設,未啟用 OLE32 追蹤。因此,您必須先啟用 OLE32 追蹤,才能開始追蹤。您可以加入這一節所述的所需的登錄項目。您可以啟用 OLE32 追蹤或特定處理程序上使用 OLE32 的所有處理程序。在許多的處理程序中載入 OLE32.dll,啟用追蹤,所有處理程序可能會導致效能降低。因此,我們不建議啟用所有處理程序的追蹤。
  • 在命令提示字元中,執行下列命令以啟用上使用 OLE32 的所有處理序的 OLE32 追蹤:
    reg 新增 HKEY_LOCAL_MACHINE\Software\Microsoft\OLE\Tracing /v ExecutablesToTrace /t REG_MULTI_SZ /d * /f
  • 在命令提示字元中,執行下列命令以啟用上使用 OLE32 的特定處理程序的 OLE32 追蹤:
    reg 加入 HKEY_LOCAL_MACHINE\Software\Microsoft\OLE\Tracing /v ExecutablesToTrace /t REG_MULTI_SZ /d"c:\test\app1.exe\0c:\test\app2.exe"/f
注意登錄值中,您可以鍵入多個可執行檔。您必須輸入每個可執行檔的完整路徑。請注意使用雙引號和 null 結束字元 (\0)。在啟用之後 OLE32 追蹤,您必須重新啟動處理程序,以使變更生效。啟用 OLE32 追蹤之後,啟動追蹤],並在命令提示字元執行下列命令:
logman-啟動 ole32-p {bda92ae8-9f11-4d49-ba1d-a4c2abca692e} 0xf 0x5-ets

停止追蹤所有的提供者

重要您必須先停止追蹤,以便緩衝區會寫入到磁碟。若要這麼做,請在命令提示字元,視執行其中一個下列的命令:
logman-停止 comsvcs etslogman-停止 comadmin etslogman-停止 dcomscm etslogman-停止 ole32 ets

記錄檔位置

[啟動] 命令會建立在目前的目錄中沒有.etl 為副檔名,例如 Dcomscm.etl、 Ole32.etl,以此類推,記錄檔。若要變更輸出路徑,當您執行 [啟動] 命令時,您可以使用-o選項。

接下來的步驟

  1. Microsoft 必須格式化二進位檔案,這樣就可以分析。請將轉寄給您的支援連絡人.etl 為檔案。如需有關如何連絡 Microsoft 客戶服務及支援的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文:  
    295539如何和運作,請連絡 Microsoft 客戶服務及支援
  2. 追蹤工作階段完成後,請刪除登錄機碼。若要這樣做,請在命令提示字元中,執行下列命令:    reg 刪除 HKEY_LOCAL_MACHINE\Software\Microsoft\OLE\Tracing /v ExecutablesToTrace /f

參考


如需有關 COM 和 COM + 追蹤的詳細資訊,請造訪下列 MSDN 網站: