語言

RegistrationException 類別

定義

當偵測到註冊錯誤時拋出的例外。

public ref class RegistrationException sealed : SystemException
[System.Serializable]
public sealed class RegistrationException : SystemException
[<System.Serializable>]
type RegistrationException = class
    inherit SystemException
Public NotInheritable Class RegistrationException
Inherits SystemException
繼承
RegistrationException
屬性

範例

以下程式碼範例包含一個捕捉區塊,展示如何處理註冊例外。

try
{
   String^ applicationName = "Queued Component";
   String^ typeLibraryName = nullptr;
   RegistrationHelper^ helper = gcnew RegistrationHelper;
   // Call the InstallAssembly method passing it the name of the assembly to 
   // install as a COM+ application, the COM+ application name, and 
   // the name of the type library file.
   // Setting the application name and the type library to NULL (nothing in Visual Basic .NET
   // allows you to use the COM+ application name that is given in the assembly and 
   // the default type library name. The application name in the assembly metadata 
   // takes precedence over the application name you provide to InstallAssembly. 
   helper->InstallAssembly( "C:..\\..\\QueuedComponent.dll",  applicationName,  typeLibraryName, InstallationFlags::CreateTargetApplication );
   Console::WriteLine( "Registration succeeded: Type library {0} created.", typeLibraryName );
   Console::Read();

   // Create a RegistrationConfig object and set its attributes
   // Create a RegistrationHelper object, and call the InstallAssemblyFromConfig
   // method by passing the RegistrationConfiguration object to it as a 
   // reference object
   RegistrationConfig^ registrationConfiguration = gcnew RegistrationConfig;
   registrationConfiguration->AssemblyFile = "C:..\\..\\QueuedComponent.dll";
   registrationConfiguration->Application = "MyApp";
   registrationConfiguration->InstallationFlags = InstallationFlags::CreateTargetApplication;
   RegistrationHelper^ helperFromConfig = gcnew RegistrationHelper;
   helperFromConfig->InstallAssemblyFromConfig(  registrationConfiguration );
}
catch ( RegistrationException^ e ) 
{
   Console::WriteLine( e->Message );

   // Check whether the ErrorInfo property of the RegistrationException object is null. 
   // If there is no extended error information about 
   // methods related to multiple COM+ objects ErrorInfo will be null.
   if ( e->ErrorInfo != nullptr )
   {
      // Gets an array of RegistrationErrorInfo objects describing registration errors
      array<RegistrationErrorInfo^>^ registrationErrorInfos = e->ErrorInfo;
      
      // Iterate through the array of RegistrationErrorInfo objects and disply the 
      // ErrorString for each object.
      System::Collections::IEnumerator^ myEnum = registrationErrorInfos->GetEnumerator();
      while ( myEnum->MoveNext() )
      {
         RegistrationErrorInfo^ registrationErrorInfo = (RegistrationErrorInfo^)( myEnum->Current );
         Console::WriteLine( registrationErrorInfo->ErrorString );
      }
   }
   Console::Read();
}
try
{
    string applicationName = "Queued Component";			
    string typeLibraryName = null;
    RegistrationHelper helper = new RegistrationHelper();
    // Call the InstallAssembly method passing it the name of the assembly to
    // install as a COM+ application, the COM+ application name, and
    // the name of the type library file.
    // Setting the application name and the type library to NULL (nothing in Visual Basic .NET
    // allows you to use the COM+ application name that is given in the assembly and
    // the default type library name. The application name in the assembly metadata
    // takes precedence over the application name you provide to InstallAssembly.
    helper.InstallAssembly(@"C:..\..\QueuedComponent.dll", ref applicationName, ref typeLibraryName, InstallationFlags.CreateTargetApplication);
    Console.WriteLine("Registration succeeded: Type library {0} created.", typeLibraryName);
    Console.Read();

    // Create a RegistrationConfig object and set its attributes
    // Create a RegistrationHelper object, and call the InstallAssemblyFromConfig
    // method by passing the RegistrationConfiguration object to it as a
    // reference object
    RegistrationConfig registrationConfiguration = new RegistrationConfig();
    registrationConfiguration.AssemblyFile=@"C:..\..\QueuedComponent.dll";
    registrationConfiguration.Application = "MyApp";
    registrationConfiguration.InstallationFlags = InstallationFlags.CreateTargetApplication;
    RegistrationHelper helperFromConfig = new RegistrationHelper();
    helperFromConfig.InstallAssemblyFromConfig(ref registrationConfiguration);
}

catch(RegistrationException e)
{
    Console.WriteLine(e.Message);

    // Check whether the ErrorInfo property of the RegistrationException object is null.
    // If there is no extended error information about
    // methods related to multiple COM+ objects ErrorInfo will be null.
    if(e.ErrorInfo != null)
    {
        // Gets an array of RegistrationErrorInfo objects describing registration errors
        RegistrationErrorInfo[] registrationErrorInfos = e.ErrorInfo;

        // Iterate through the array of RegistrationErrorInfo objects and disply the
        // ErrorString for each object.

        foreach (RegistrationErrorInfo registrationErrorInfo in registrationErrorInfos)
        {
            Console.WriteLine(registrationErrorInfo.ErrorString);
        }
    }
    Console.Read();
}
Try
    Dim applicationName As String = "Queued Component"
    Dim typeLibraryName As String = Nothing
    Dim helper As New RegistrationHelper

    ' Call the InstallAssembly method passing it the name of the assembly to 
    ' install as a COM+ application, the COM+ application name, and 
    ' the name of the type library file.
    ' Setting the application name and the type library to NULL (nothing in Visual Basic .NET
    ' allows you to use the COM+ application name that is given in the assembly and 
    ' the default type library name. The application name in the assembly metadata 
    ' takes precedence over the application name you provide to InstallAssembly. 
    helper.InstallAssembly("C:..\..\QueuedComponent.dll", applicationName, typeLibraryName, InstallationFlags.CreateTargetApplication)
    MsgBox("Registration succeeded: Type library " & typeLibraryName & " created.")
    Console.Read()

    ' Create a RegistrationConfig object and set its attributes
    ' Create a RegistrationHelper object, and call the InstallAssemblyFromConfig
    ' method by passing the RegistrationConfiguration object to it as a 
    ' reference object
    Dim registrationConfiguration As New RegistrationConfig()
    registrationConfiguration.AssemblyFile = "C:..\..\QueuedComponent.dll"
    registrationConfiguration.Application = "MyApp"
    registrationConfiguration.InstallationFlags = InstallationFlags.CreateTargetApplication
    Dim helperFromConfig As New RegistrationHelper()
    helperFromConfig.InstallAssemblyFromConfig(registrationConfiguration)

Catch e As RegistrationException
    MsgBox(e.Message)

    ' Check whether the ErrorInfo property of the RegistrationException object is null. 
    ' If there is no extended error information about 
    ' methods related to multiple COM+ objects ErrorInfo will be null.
    If Not (e.ErrorInfo Is Nothing) Then
        ' Gets an array of RegistrationErrorInfo objects describing registration errors
        Dim registrationErrorInfos As RegistrationErrorInfo() = e.ErrorInfo

        ' Iterate through the array of RegistrationErrorInfo objects and disply the 
        ' ErrorString for each object.
        Dim registrationErrorInfo As RegistrationErrorInfo
        For Each registrationErrorInfo In registrationErrorInfos
            MsgBox(registrationErrorInfo.ErrorString)
        Next registrationErrorInfo
    End If
    Console.Read()
End Try

建構函式

名稱 Description
RegistrationException()

初始化 RegistrationException 類別的新執行個體。

RegistrationException(String, Exception)

初始化類別的新實例 RegistrationException ,並以指定的錯誤訊息和巢狀例外。

RegistrationException(String)

使用指定的錯誤訊息,初始化 RegistrationException 類別的新實例。

屬性

名稱 Description
Data

取得一組鍵值對,提供關於例外的額外使用者定義資訊。

(繼承來源 Exception)
ErrorInfo

會取得描述註冊錯誤的物件陣列 RegistrationErrorInfo 。

HelpLink

取得或設定與此例外相關的說明檔案連結。

(繼承來源 Exception)
HResult

取得或設定 HRESULT,一個編碼的數值,指派給特定例外。

(繼承來源 Exception)
InnerException

會取得 Exception 造成目前例外的實例。

(繼承來源 Exception)
Message

取得描述目前例外狀況的訊息。

(繼承來源 Exception)
Source

取得或設定造成錯誤之應用程式或物件的名稱。

(繼承來源 Exception)
StackTrace

會取得呼叫堆疊上即時框架的字串表示。

(繼承來源 Exception)
TargetSite

會取得拋出當前例外的方法。

(繼承來源 Exception)

方法

名稱 Description
Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetBaseException()

當在派生類別中被覆寫時,回傳 Exception 是一個或多個後續例外的根因。

(繼承來源 Exception)
GetHashCode()

做為預設哈希函式。

(繼承來源 Object)
GetObjectData(SerializationInfo, StreamingContext)

將錯誤資訊設 SerializationInfo 為 RegistrationErrorInfo的物件。

GetType()

取得目前實例的執行時型態。

(繼承來源 Exception)
MemberwiseClone()

建立目前 Object的淺層複本。

(繼承來源 Object)
ToString()

建立並回傳當前例外的字串表示。

(繼承來源 Exception)

事件

名稱 Description
SerializeObjectState
已淘汰.

當例外被序列化以建立包含該例外序列化資料的例外狀態物件時,會發生這種情況。

(繼承來源 Exception)

適用於