手動註冊組件
提供 .NET 服務安裝工具 (Regsvcs.exe),可以手動為內含 Serviced 元件的組件進行註冊。Regsvcs.exe 是一個命令列工具。您也可以藉由建立 RegistrationHelper 類別的執行個體及使用 InstallAssembly 方法,使用 System.EnterpriseServices.RegistrationHelper 類別以程式設計方式存取這些註冊功能。
雖然不是一定必要,但以手動方式註冊元件以進行設計階段測試,這種作法卻相當好用。不像動態註冊,手動處理序會提供執行時發生之錯誤的回饋。
![]() |
---|
建立伺服器應用程式時,組件及其所相依的組件都必須使用 Windows Installer 新增至全域組件快取 (GAC),此伺服器應用程式才能使用;否則應用程式會產生例外狀況。 |
以下表格列出了 Regsvcs.exe (或 API) 執行的每一個步驟,並描述每個步驟可能的失敗。
步驟 | 可能的失敗 | 結果 |
---|---|---|
載入組件。 |
載入組件失敗。 |
顯示錯誤訊息和失敗描述。 |
註冊組件。 |
型別註冊失敗。 |
未正確指定的組件導致發生 TypeLoadException 例外狀況。 |
產生型別程式庫。 |
程式庫產生失敗。 |
未正確指定的組件導致發生 TypeLoadException 例外狀況。 |
呼叫 LoadTypeLibrary 方法以註冊型別程式庫。 |
自動呼叫失敗。 |
產生 TypeLoadException 例外狀況。 |
將型別程式庫安裝到要求的應用程式中。 |
組件註冊工具 (Regasm.exe) 找不到指定的應用程式。 |
顯示錯誤訊息「找不到其中一個物件」。 若要解決這個問題,請確認指定之型別程式庫與應用程式的位置。 |
設定類別。 |
工具偵測到註冊時服務屬性不相符的情形,例如,類別設定了衝突的屬性,如下: TransactionOption.Required SynchonizationOption.Disabled |
顯示錯誤訊息說明此衝突,或是修改其中一個不相符的服務。 |
請參閱
參考
System.EnterpriseServicesRegistrationHelper
System.EnterpriseServices Namespace
概念
其他資源
.NET Services Installation Tool (Regsvcs.exe)
Copyright © 2007 by Microsoft Corporation. All rights reserved.