Поделиться через


Type.GetTypeFromProgID Метод

Определение

Возвращает тип, связанный с указанным идентификатором программы (ProgID).

Перегрузки

GetTypeFromProgID(String)

Возвращает тип, связанный с указанным идентификатором программы (ProgID), возвращая значение NULL, если при загрузке Typeвозникает ошибка.

GetTypeFromProgID(String, Boolean)

Возвращает тип, связанный с указанным идентификатором программы (ProgID), указывая, следует ли вызывать исключение при возникновении ошибки при загрузке типа.

GetTypeFromProgID(String, String)

Возвращает тип, связанный с указанным идентификатором программы (progID) с указанного сервера, возвращая значение NULL, если при загрузке типа возникает ошибка.

GetTypeFromProgID(String, String, Boolean)

Возвращает тип, связанный с указанным идентификатором программы (progID) с указанного сервера, указывая, следует ли вызывать исключение при возникновении ошибки при загрузке типа.

GetTypeFromProgID(String)

Исходный код:
Type.cs
Исходный код:
Type.cs
Исходный код:
Type.cs

Возвращает тип, связанный с указанным идентификатором программы (ProgID), возвращая значение NULL, если при загрузке Typeвозникает ошибка.

public:
 static Type ^ GetTypeFromProgID(System::String ^ progID);
public static Type? GetTypeFromProgID (string progID);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static Type? GetTypeFromProgID (string progID);
[System.Security.SecurityCritical]
public static Type GetTypeFromProgID (string progID);
public static Type GetTypeFromProgID (string progID);
static member GetTypeFromProgID : string -> Type
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member GetTypeFromProgID : string -> Type
[<System.Security.SecurityCritical>]
static member GetTypeFromProgID : string -> Type
Public Shared Function GetTypeFromProgID (progID As String) As Type

Параметры

progID
String

Идентификатор progID типа, который требуется получить.

Возвращаемое значение

Тип, связанный с указанным ProgID, если progID является допустимой записью в реестре и тип связан с ним; в противном случае null.

Атрибуты

Исключения

progID null.

Комментарии

Этот метод предоставляется для поддержки COM. ProgID не используются в Microsoft .NET Framework, так как они были заменены понятием пространства имен.

См. также раздел

Применяется к

GetTypeFromProgID(String, Boolean)

Исходный код:
Type.cs
Исходный код:
Type.cs
Исходный код:
Type.cs

Возвращает тип, связанный с указанным идентификатором программы (ProgID), указывая, следует ли вызывать исключение при возникновении ошибки при загрузке типа.

public:
 static Type ^ GetTypeFromProgID(System::String ^ progID, bool throwOnError);
public static Type? GetTypeFromProgID (string progID, bool throwOnError);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static Type? GetTypeFromProgID (string progID, bool throwOnError);
[System.Security.SecurityCritical]
public static Type GetTypeFromProgID (string progID, bool throwOnError);
public static Type GetTypeFromProgID (string progID, bool throwOnError);
static member GetTypeFromProgID : string * bool -> Type
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member GetTypeFromProgID : string * bool -> Type
[<System.Security.SecurityCritical>]
static member GetTypeFromProgID : string * bool -> Type
Public Shared Function GetTypeFromProgID (progID As String, throwOnError As Boolean) As Type

Параметры

progID
String

Идентификатор progID типа, который требуется получить.

throwOnError
Boolean

true вызывать любое исключение, возникающее.

-или-

false игнорировать любое возникающее исключение.

Возвращаемое значение

Тип, связанный с указанным идентификатором программы (ProgID), если progID является допустимой записью в реестре и тип связан с ним; в противном случае null.

Атрибуты

Исключения

progID null.

Указанный progID не зарегистрирован.

Примеры

В следующем примере извлекается тип, передав идентификатор ProgID, указывая, следует ли вызывать исключение, если progID недопустим. Затем в примере отображается классИД, связанный с ProgID, а также любое применимое сообщение об исключении.

using namespace System;
int main()
{
   try
   {
      
      // Use the ProgID HKEY_CLASSES_ROOT\DirControl.DirList.1.
      String^ myString1 = "DIRECT.ddPalette.3";
      
      // Use a nonexistent ProgID WrongProgID.
      String^ myString2 = "WrongProgID";
      
      // Make a call to the method to get the type information of the given ProgID.
      Type^ myType1 = Type::GetTypeFromProgID( myString1, true );
      Console::WriteLine( "GUID for ProgID DirControl.DirList.1 is {0}.", myType1->GUID );
      
      // Throw an exception because the ProgID is invalid and the throwOnError
      // parameter is set to True.
      Type^ myType2 = Type::GetTypeFromProgID( myString2, true );
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "An exception occurred." );
      Console::WriteLine( "Source: {0}", e->Source );
      Console::WriteLine( "Message: {0}", e->Message );
   }

}
using System;
class MainApp
{
    public static void Main()
    {
        try
        {
            // Use the ProgID HKEY_CLASSES_ROOT\DirControl.DirList.1.
            string myString1 ="DIRECT.ddPalette.3";
            // Use a nonexistent ProgID WrongProgID.
            string myString2 ="WrongProgID";
            // Make a call to the method to get the type information of the given ProgID.
            Type myType1 =Type.GetTypeFromProgID(myString1,true);
            Console.WriteLine("GUID for ProgID DirControl.DirList.1 is {0}.", myType1.GUID);
            // Throw an exception because the ProgID is invalid and the throwOnError
            // parameter is set to True.
            Type myType2 =Type.GetTypeFromProgID(myString2,true);
        }
        catch(Exception e)
        {
            Console.WriteLine("An exception occurred.");
            Console.WriteLine("Source: {0}", e.Source);
            Console.WriteLine("Message: {0}", e.Message);
        }
    }
}
open System

try
    // Use the ProgID HKEY_CLASSES_ROOT\DirControl.DirList.1.
    let myString1 ="DIRECT.ddPalette.3"
    // Use a nonexistent ProgID WrongProgID.
    let myString2 ="WrongProgID"
    // Make a call to the method to get the type information of the given ProgID.
    let myType1 =Type.GetTypeFromProgID(myString1, true)
    printfn $"GUID for ProgID DirControl.DirList.1 is {myType1.GUID}."
    // Throw an exception because the ProgID is invalid and the throwOnError
    // parameter is set to True.
    let myType2 =Type.GetTypeFromProgID(myString2, true)
    ()
with e ->
    printfn "An exception occurred."
    printfn $"Source: {e.Source}"
    printfn $"Message: {e.Message}"
Class MainApp
    Public Shared Sub Main()
        Try
            ' Use the ProgID HKEY_CLASSES_ROOT\DirControl.DirList.1.
            Dim myString1 As String = "DIRECT.ddPalette.3"
            ' Use a nonexistent ProgID WrongProgID.
            Dim myString2 As String = "WrongProgID"
            ' Make a call to the method to get the type information of the given ProgID.
            Dim myType1 As Type = Type.GetTypeFromProgID(myString1, True)
            Console.WriteLine("GUID for ProgID DirControl.DirList.1 is {0}.", myType1.GUID.ToString())
            ' Throw an exception because the ProgID is invalid and the throwOnError 
            ' parameter is set to True.
            Dim myType2 As Type = Type.GetTypeFromProgID(myString2, True)
        Catch e As Exception
            Console.WriteLine("An exception occurred.")
            Console.WriteLine("Source: {0}", e.Source.ToString())
            Console.WriteLine("Message: {0}", e.Message.ToString())
        End Try
    End Sub
End Class

Комментарии

Этот метод предоставляется для поддержки COM. Идентификаторы программ не используются в Microsoft .NET Framework, так как они были заменены понятием пространства имен.

См. также раздел

Применяется к

GetTypeFromProgID(String, String)

Исходный код:
Type.cs
Исходный код:
Type.cs
Исходный код:
Type.cs

Возвращает тип, связанный с указанным идентификатором программы (progID) с указанного сервера, возвращая значение NULL, если при загрузке типа возникает ошибка.

public:
 static Type ^ GetTypeFromProgID(System::String ^ progID, System::String ^ server);
public static Type? GetTypeFromProgID (string progID, string? server);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static Type? GetTypeFromProgID (string progID, string? server);
[System.Security.SecurityCritical]
public static Type GetTypeFromProgID (string progID, string server);
public static Type GetTypeFromProgID (string progID, string server);
static member GetTypeFromProgID : string * string -> Type
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member GetTypeFromProgID : string * string -> Type
[<System.Security.SecurityCritical>]
static member GetTypeFromProgID : string * string -> Type
Public Shared Function GetTypeFromProgID (progID As String, server As String) As Type

Параметры

progID
String

Идентификатор progID типа, который требуется получить.

server
String

Сервер, с которого нужно загрузить тип. Если имя сервера null, этот метод автоматически возвращается на локальный компьютер.

Возвращаемое значение

Тип, связанный с указанным идентификатором программы (progID), если progID является допустимой записью в реестре и тип связан с ним; в противном случае null.

Атрибуты

Исключения

progID null.

Примеры

В следующем примере извлекается тип путем передачи имени ProgID и сервера. В примере отображается идентификатор класса, связанный с ProgID, или вызывает исключение, если идентификатор ProgID или имя сервера недопустимо.

using namespace System;
int main()
{
   try
   {
      
      // Use the ProgID localhost\HKEY_CLASSES_ROOT\DirControl::DirList.1.
      String^ theProgramID = "DirControl.DirList.1";
      
      // Use the server name localhost.
      String^ theServer = "localhost";
      
      // Make a call to the method to get the type information for the given ProgID.
      Type^ myType = Type::GetTypeFromProgID( theProgramID, theServer );
      if ( myType == nullptr )
      {
         throw gcnew Exception( "Invalid ProgID or Server." );
      }
      Console::WriteLine( "GUID for ProgID DirControl.DirList.1 is {0}.", myType->GUID );
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "An exception occurred." );
      Console::WriteLine( "Source: {0}", e->Source );
      Console::WriteLine( "Message: {0}", e->Message );
   }

}
using System;
class MainApp
{
    public static void Main()
    {
        try
        {
            // Use the ProgID localhost\HKEY_CLASSES_ROOT\DirControl.DirList.1.
            string theProgramID ="DirControl.DirList.1";
            // Use the server name localhost.
            string theServer="localhost";
            // Make a call to the method to get the type information for the given ProgID.
            Type myType =Type.GetTypeFromProgID(theProgramID,theServer);
            if(myType==null)
            {
                throw new Exception("Invalid ProgID or Server.");
            }
            Console.WriteLine("GUID for ProgID DirControl.DirList.1 is {0}.", myType.GUID);
        }
        catch(Exception e)
        {
            Console.WriteLine("An exception occurred.");
            Console.WriteLine("Source: {0}" , e.Source);
            Console.WriteLine("Message: {0}" , e.Message);
        }		
    }
}
open System

try
    // Use the ProgID localhost\HKEY_CLASSES_ROOT\DirControl.DirList.1.
    let theProgramID ="DirControl.DirList.1"
    // Use the server name localhost.
    let theServer="localhost"
    // Make a call to the method to get the type information for the given ProgID.
    let myType =Type.GetTypeFromProgID(theProgramID, theServer)
    if myType = null then
        raise (Exception "Invalid ProgID or Server.")
    printfn $"GUID for ProgID DirControl.DirList.1 is {myType.GUID}."
with e ->
    printfn "An exception occurred."
    printfn $"Source: {e.Source}"
    printfn $"Message: {e.Message}"
Class MainApp
    Public Shared Sub Main()
        Try
            ' Use ProgID localhost\HKEY_CLASSES_ROOT\DirControl.DirList.1.
            Dim theProgramID As String = "DirControl.DirList.1"
            ' Use Server name localhost.
            Dim theServer As String = "localhost"
            ' Make a call to the method to get the type information for the given ProgID.
            Dim myType As Type = Type.GetTypeFromProgID(theProgramID, theServer)
            If myType Is Nothing Then
                Throw New Exception("Invalid ProgID or server.")
            End If
            Console.WriteLine("GUID for ProgID DirControl.DirList.1 is {0}.", myType.GUID.ToString())
        Catch e As Exception
            Console.WriteLine("An exception occurred.")
            Console.WriteLine("Source: {0}.", e.Source.ToString())
            Console.WriteLine("Message: {0}.", e.Message.ToString())
        End Try
    End Sub
End Class

Комментарии

Этот метод предоставляется для поддержки COM. Идентификаторы программ не используются в Microsoft .NET Framework, так как они были заменены понятием пространства имен.

См. также раздел

Применяется к

GetTypeFromProgID(String, String, Boolean)

Исходный код:
Type.cs
Исходный код:
Type.cs
Исходный код:
Type.cs

Возвращает тип, связанный с указанным идентификатором программы (progID) с указанного сервера, указывая, следует ли вызывать исключение при возникновении ошибки при загрузке типа.

public:
 static Type ^ GetTypeFromProgID(System::String ^ progID, System::String ^ server, bool throwOnError);
public static Type? GetTypeFromProgID (string progID, string? server, bool throwOnError);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static Type? GetTypeFromProgID (string progID, string? server, bool throwOnError);
[System.Security.SecurityCritical]
public static Type GetTypeFromProgID (string progID, string server, bool throwOnError);
public static Type GetTypeFromProgID (string progID, string server, bool throwOnError);
static member GetTypeFromProgID : string * string * bool -> Type
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member GetTypeFromProgID : string * string * bool -> Type
[<System.Security.SecurityCritical>]
static member GetTypeFromProgID : string * string * bool -> Type
Public Shared Function GetTypeFromProgID (progID As String, server As String, throwOnError As Boolean) As Type

Параметры

progID
String

Идентификатор progID Type для получения.

server
String

Сервер, с которого нужно загрузить тип. Если имя сервера null, этот метод автоматически возвращается на локальный компьютер.

throwOnError
Boolean

true вызывать любое исключение, возникающее.

-или-

false игнорировать любое возникающее исключение.

Возвращаемое значение

Тип, связанный с указанным идентификатором программы (progID), если progID является допустимой записью в реестре и тип связан с ним; в противном случае null.

Атрибуты

Исключения

progID null.

Указанный progID не зарегистрирован.

Примеры

В следующем примере извлекается тип путем передачи имени ProgID и сервера. Затем в примере отображается classID, связанный с ProgID, указывая, следует ли вызывать исключение, если progID или имя сервера недопустимо.

using namespace System;
int main()
{
   try
   {
      
      // Use server localhost.
      String^ theServer = "localhost";
      
      // Use  ProgID HKEY_CLASSES_ROOT\DirControl.DirList.1.
      String^ myString1 = "DirControl.DirList.1";
      
      // Use a wrong ProgID WrongProgID.
      String^ myString2 = "WrongProgID";
      
      // Make a call to the method to get the type information for the given ProgID.
      Type^ myType1 = Type::GetTypeFromProgID( myString1, theServer, true );
      Console::WriteLine( "GUID for ProgID DirControl.DirList.1 is {0}.", myType1->GUID );
      
      // Throw an exception because the ProgID is invalid and the throwOnError
      // parameter is set to True.
      Type^ myType2 = Type::GetTypeFromProgID( myString2, theServer, true );
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "An exception occurred. The ProgID is wrong." );
      Console::WriteLine( "Source: {0}", e->Source );
      Console::WriteLine( "Message: {0}", e->Message );
   }

}

using System;
class MainApp
{
    public static void Main()
    {
        try
        {
            // Use server localhost.
            string theServer="localhost";
            // Use  ProgID HKEY_CLASSES_ROOT\DirControl.DirList.1.
            string myString1 ="DirControl.DirList.1";
            // Use a wrong ProgID WrongProgID.
            string myString2 ="WrongProgID";
            // Make a call to the method to get the type information for the given ProgID.
            Type myType1 =Type.GetTypeFromProgID(myString1,theServer,true);
            Console.WriteLine("GUID for ProgID DirControl.DirList.1 is {0}.", myType1.GUID);
            // Throw an exception because the ProgID is invalid and the throwOnError
            // parameter is set to True.
            Type myType2 =Type.GetTypeFromProgID(myString2, theServer, true);
        }
        catch(Exception e)
        {
            Console.WriteLine("An exception occurred. The ProgID is wrong.");
            Console.WriteLine("Source: {0}" , e.Source);
            Console.WriteLine("Message: {0}" , e.Message);
        }
    }
}
open System
try
    // Use server localhost.
    let theServer="localhost"
    // Use  ProgID HKEY_CLASSES_ROOT\DirControl.DirList.1.
    let myString1 ="DirControl.DirList.1"
    // Use a wrong ProgID WrongProgID.
    let myString2 ="WrongProgID"
    // Make a call to the method to get the type information for the given ProgID.
    let myType1 =Type.GetTypeFromProgID(myString1, theServer, true)
    printfn $"GUID for ProgID DirControl.DirList.1 is {myType1.GUID}."
    // Throw an exception because the ProgID is invalid and the throwOnError
    // parameter is set to True.
    let myType2 =Type.GetTypeFromProgID(myString2, theServer, true)
    ()
with e ->
    printfn "An exception occurred. The ProgID is wrong."
    printfn $"Source: {e.Source}"
    printfn $"Message: {e.Message}"
Class MainApp
    Public Shared Sub Main()
        Try
            ' Use Server localhost.
            Dim theServer As String = "localhost"
            ' Use  ProgID HKEY_CLASSES_ROOT\DirControl.DirList.1.
            Dim myString1 As String = "DirControl.DirList.1"
            ' Use a wrong ProgID WrongProgID.
            Dim myString2 As String = "WrongProgID"
            ' Make a call to the method to get the type information for the given ProgID.
            Dim myType1 As Type = Type.GetTypeFromProgID(myString1, theServer, True)
            Console.WriteLine("GUID for ProgID DirControl.DirList.1 is {0}.", myType1.GUID.ToString())
            ' Throw an exception because the ProgID is invalid and the throwOnError 
            ' parameter is set to True.
            Dim myType2 As Type = Type.GetTypeFromProgID(myString2, theServer, True)
        Catch e As Exception
            Console.WriteLine("An exception occurred. The ProgID is wrong.")
            Console.WriteLine("Source: {0}", e.Source.ToString())
            Console.WriteLine("Message: {0}", e.Message.ToString())
        End Try
    End Sub
End Class

Комментарии

Этот метод предоставляется для поддержки COM. Идентификаторы программ не используются в Microsoft .NET Framework, так как они были заменены понятием пространства имен.

См. также раздел

Применяется к