AssemblyName Třída

Definice

Popisuje jedinečnou identitu sestavení v plném rozsahu.

public ref class AssemblyName sealed
public ref class AssemblyName sealed : ICloneable, System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
public ref class AssemblyName sealed : ICloneable, System::Runtime::InteropServices::_AssemblyName, System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
public sealed class AssemblyName
public sealed class AssemblyName : ICloneable, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
public sealed class AssemblyName : ICloneable, System.Runtime.InteropServices._AssemblyName, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class AssemblyName : ICloneable, System.Runtime.InteropServices._AssemblyName, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
type AssemblyName = class
type AssemblyName = class
    interface ICloneable
    interface IDeserializationCallback
    interface ISerializable
type AssemblyName = class
    interface ICloneable
    interface ISerializable
    interface IDeserializationCallback
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
type AssemblyName = class
    interface _AssemblyName
    interface ICloneable
    interface ISerializable
    interface IDeserializationCallback
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type AssemblyName = class
    interface _AssemblyName
    interface ICloneable
    interface ISerializable
    interface IDeserializationCallback
Public NotInheritable Class AssemblyName
Public NotInheritable Class AssemblyName
Implements ICloneable, IDeserializationCallback, ISerializable
Public NotInheritable Class AssemblyName
Implements _AssemblyName, ICloneable, IDeserializationCallback, ISerializable
Dědičnost
AssemblyName
Atributy
Implementuje

Příklady

Tento příklad ukazuje, jak pomocí různých tříd reflexe analyzovat metadata obsažená v sestavení.

using System;
using System.Reflection;

class Module1
{
    public static void Main()
    {
        // This variable holds the amount of indenting that
        // should be used when displaying each line of information.
        Int32 indent = 0;
        // Display information about the EXE assembly.
        Assembly a = typeof(Module1).Assembly;
        Display(indent, "Assembly identity={0}", a.FullName);
        Display(indent+1, "Codebase={0}", a.CodeBase);

        // Display the set of assemblies our assemblies reference.

        Display(indent, "Referenced assemblies:");
        foreach (AssemblyName an in a.GetReferencedAssemblies() )
        {
             Display(indent + 1, "Name={0}, Version={1}, Culture={2}, PublicKey token={3}", an.Name, an.Version, an.CultureInfo.Name, (BitConverter.ToString (an.GetPublicKeyToken())));
        }
        Display(indent, "");

        // Display information about each assembly loading into this AppDomain.
        foreach (Assembly b in AppDomain.CurrentDomain.GetAssemblies())
        {
            Display(indent, "Assembly: {0}", b);

            // Display information about each module of this assembly.
            foreach ( Module m in b.GetModules(true) )
            {
                Display(indent+1, "Module: {0}", m.Name);
            }

            // Display information about each type exported from this assembly.

            indent += 1;
            foreach ( Type t in b.GetExportedTypes() )
            {
                Display(0, "");
                Display(indent, "Type: {0}", t);

                // For each type, show its members & their custom attributes.

                indent += 1;
                foreach (MemberInfo mi in t.GetMembers() )
                {
                    Display(indent, "Member: {0}", mi.Name);
                    DisplayAttributes(indent, mi);

                    // If the member is a method, display information about its parameters.

                    if (mi.MemberType==MemberTypes.Method)
                    {
                        foreach ( ParameterInfo pi in ((MethodInfo) mi).GetParameters() )
                        {
                            Display(indent+1, "Parameter: Type={0}, Name={1}", pi.ParameterType, pi.Name);
                        }
                    }

                    // If the member is a property, display information about the property's accessor methods.
                    if (mi.MemberType==MemberTypes.Property)
                    {
                        foreach ( MethodInfo am in ((PropertyInfo) mi).GetAccessors() )
                        {
                            Display(indent+1, "Accessor method: {0}", am);
                        }
                    }
                }
                indent -= 1;
            }
            indent -= 1;
        }
    }

    // Displays the custom attributes applied to the specified member.
    public static void DisplayAttributes(Int32 indent, MemberInfo mi)
    {
        // Get the set of custom attributes; if none exist, just return.
        object[] attrs = mi.GetCustomAttributes(false);
        if (attrs.Length==0) {return;}

        // Display the custom attributes applied to this member.
        Display(indent+1, "Attributes:");
        foreach ( object o in attrs )
        {
            Display(indent+2, "{0}", o.ToString());
        }
    }

    // Display a formatted string indented by the specified amount.
    public static void Display(Int32 indent, string format, params object[] param)

    {
        Console.Write(new string(' ', indent*2));
        Console.WriteLine(format, param);
    }
}

//The output shown below is abbreviated.
//
//Assembly identity=ReflectionCS, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
//  Codebase=file:///C:/Documents and Settings/test/My Documents/Visual Studio 2005/Projects/Reflection/Reflection/obj/Debug/Reflection.exe
//Referenced assemblies:
//  Name=mscorlib, Version=2.0.0.0, Culture=, PublicKey token=B7-7A-5C-56-19-34-E0-89
//
//Assembly: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
//  Module: mscorlib.dll
//  Module: mscorlib.dll
//  Module: mscorlib.dll
//  Module: mscorlib.dll
//  Module: mscorlib.dll
//  Module: mscorlib.dll
//  Module: mscorlib.dll
//  Module: mscorlib.dll
//  Module: mscorlib.dll
//  Module: mscorlib.dll
//  Module: mscorlib.dll
//  Module: mscorlib.dll
//  Module: mscorlib.dll
//  Module: mscorlib.dll
//
//  Type: System.Object
//    Member: GetType
//    Member: ToString
//    Member: Equals
//      Parameter: Type=System.Object, Name=obj
//    Member: Equals
//      Parameter: Type=System.Object, Name=objA
//      Parameter: Type=System.Object, Name=objB
//    Member: ReferenceEquals
//      Attributes:
//        System.Runtime.ConstrainedExecution.ReliabilityContractAttribute
//      Parameter: Type=System.Object, Name=objA
//      Parameter: Type=System.Object, Name=objB
//    Member: GetHashCode
//    Member: .ctor
//      Attributes:
//        System.Runtime.ConstrainedExecution.ReliabilityContractAttribute
//
//  Type: System.ICloneable
//    Member: Clone
//
//  Type: System.Collections.IEnumerable
//    Member: GetEnumerator
//      Attributes:
//        System.Runtime.InteropServices.DispIdAttribute
//
//  Type: System.Collections.ICollection
//    Member: CopyTo
//      Parameter: Type=System.Array, Name=array
//      Parameter: Type=System.Int32, Name=index
//    Member: get_Count
//    Member: get_SyncRoot
//    Member: get_IsSynchronized
//    Member: Count
//      Accessor method: Int32 get_Count()
//    Member: SyncRoot
//      Accessor method: System.Object get_SyncRoot()
//    Member: IsSynchronized
//      Accessor method: Boolean get_IsSynchronized()
//
//  Type: System.Collections.IList
//    Member: get_Item
//      Parameter: Type=System.Int32, Name=index
//    Member: set_Item
//      Parameter: Type=System.Int32, Name=index
//      Parameter: Type=System.Object, Name=value
//    Member: Add
//      Parameter: Type=System.Object, Name=value
//    Member: Contains
//      Parameter: Type=System.Object, Name=value
//    Member: Clear
//    Member: get_IsReadOnly
//    Member: get_IsFixedSize
//    Member: IndexOf
//      Parameter: Type=System.Object, Name=value
//    Member: Insert
//      Parameter: Type=System.Int32, Name=index
//      Parameter: Type=System.Object, Name=value
//    Member: Remove
//      Parameter: Type=System.Object, Name=value
//    Member: RemoveAt
//      Parameter: Type=System.Int32, Name=index
//    Member: Item
//      Accessor method: System.Object get_Item(Int32)
//      Accessor method: Void set_Item(Int32, System.Object)
//    Member: IsReadOnly
//      Accessor method: Boolean get_IsReadOnly()
//    Member: IsFixedSize
//      Accessor method: Boolean get_IsFixedSize()
//
//  Type: System.Array
//    Member: IndexOf
//      Parameter: Type=T[], Name=array
//      Parameter: Type=T, Name=value
//    Member: AsReadOnly
//      Parameter: Type=T[], Name=array
//    Member: Resize
//      Attributes:
//        System.Runtime.ConstrainedExecution.ReliabilityContractAttribute
//      Parameter: Type=T[]&, Name=array
//      Parameter: Type=System.Int32, Name=newSize
//    Member: BinarySearch
//      Attributes:
//        System.Runtime.ConstrainedExecution.ReliabilityContractAttribute
//      Parameter: Type=T[], Name=array
//      Parameter: Type=T, Name=value
//    Member: BinarySearch
//      Attributes:
//        System.Runtime.ConstrainedExecution.ReliabilityContractAttribute
//      Parameter: Type=T[], Name=array
//      Parameter: Type=T, Name=value
//      Parameter: Type=System.Collections.Generic.IComparer`1[T], Name=comparer
Imports System.Reflection

Module Module1
    Sub Main()
        ' This variable holds the amount of indenting that 
        ' should be used when displaying each line of information.
        Dim indent As Int32 = 0
        ' Display information about the EXE assembly.
        Dim a As Assembly = GetType(Module1).Assembly
        Display(indent, "Assembly identity={0}", a.FullName)
        Display(indent + 1, "Codebase={0}", a.CodeBase)

        ' Display the set of assemblies our assemblies reference.
        Dim an As AssemblyName
        Display(indent, "Referenced assemblies:")
        For Each an In a.GetReferencedAssemblies()
            Display(indent + 1, "Name={0}, Version={1}, Culture={2}, PublicKey token={3}", _
                an.Name, an.Version, an.CultureInfo.Name, BitConverter.ToString(an.GetPublicKeyToken))
        Next
        Display(indent, "")

        ' Display information about each assembly loading into this AppDomain.
        For Each a In AppDomain.CurrentDomain.GetAssemblies()
            Display(indent, "Assembly: {0}", a)

            ' Display information about each module of this assembly.
            Dim m As [Module]
            For Each m In a.GetModules(True)
                Display(indent + 1, "Module: {0}", m.Name)
            Next

            ' Display information about each type exported from this assembly.
            Dim t As Type
            indent += 1
            For Each t In a.GetExportedTypes()
                Display(0, "")
                Display(indent, "Type: {0}", t)

                ' For each type, show its members & their custom attributes.
                Dim mi As MemberInfo
                indent += 1
                For Each mi In t.GetMembers()
                    Display(indent, "Member: {0}", mi.Name)
                    DisplayAttributes(indent, mi)

                    ' If the member is a method, display information about its parameters.
                    Dim pi As ParameterInfo
                    If mi.MemberType = MemberTypes.Method Then
                        For Each pi In CType(mi, MethodInfo).GetParameters()
                            Display(indent + 1, "Parameter: Type={0}, Name={1}", pi.ParameterType, pi.Name)
                        Next
                    End If

                    ' If the member is a property, display information about the property's accessor methods.
                    If mi.MemberType = MemberTypes.Property Then
                        Dim am As MethodInfo
                        For Each am In CType(mi, PropertyInfo).GetAccessors()
                            Display(indent + 1, "Accessor method: {0}", am)
                        Next
                    End If
                Next
                indent -= 1
            Next
            indent -= 1
        Next
    End Sub

    ' Displays the custom attributes applied to the specified member.
    Sub DisplayAttributes(ByVal indent As Int32, ByVal mi As MemberInfo)
        ' Get the set of custom attributes; if none exist, just return.
        Dim attrs() As Object = mi.GetCustomAttributes(False)
        If attrs.Length = 0 Then Return

        ' Display the custom attributes applied to this member.
        Display(indent + 1, "Attributes:")
        Dim o As Object
        For Each o In attrs
            Display(indent + 2, "{0}", o.ToString())
        Next
    End Sub

    ' Display a formatted string indented by the specified amount.
    Sub Display(ByVal indent As Int32, ByVal format As String, ByVal ParamArray params() As Object)
        Console.Write(New String(" "c, indent * 2))
        Console.WriteLine(format, params)
    End Sub
End Module

'The output shown below is abbreviated.
'
'Assembly identity=Reflection, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
'  Codebase=file:///C:/Reflection.exe
'Referenced assemblies:
'  Name=mscorlib, Version=1.0.5000.0, Culture=, PublicKey token=B7-7A-5C-56-19-34-E0-89
'  Name=Microsoft.VisualBasic, Version=7.0.5000.0, Culture=, PublicKey token=B0-3F-5F-7F-11-D5-0A-3A
'
'Assembly: mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
'  Module: mscorlib.dll
'  Module: prc.nlp
'  Module: prcp.nlp
'  Module: ksc.nlp
'  Module: ctype.nlp
'  Module: xjis.nlp
'  Module: bopomofo.nlp
'  Module: culture.nlp
'  Module: region.nlp
'  Module: sortkey.nlp
'  Module: charinfo.nlp
'  Module: big5.nlp
'  Module: sorttbls.nlp
'  Module: l_intl.nlp
'  Module: l_except.nlp
'
'  Type: System.Object
'    Member: GetHashCode
'    Member: Equals
'      Parameter: Type=System.Object, Name=obj
'    Member: ToString
'    Member: Equals
'      Parameter: Type=System.Object, Name=objA
'      Parameter: Type=System.Object, Name=objB
'    Member: ReferenceEquals
'      Parameter: Type=System.Object, Name=objA
'      Parameter: Type=System.Object, Name=objB
'    Member: GetType
'    Member: .ctor
'
'  Type: System.ICloneable
'    Member: Clone
'
'  Type: System.Collections.IEnumerable
'    Member: GetEnumerator
'      Attributes:
'        System.Runtime.InteropServices.DispIdAttribute
'
'  Type: System.Collections.ICollection
'    Member: get_IsSynchronized
'    Member: get_SyncRoot
'    Member: get_Count
'    Member: CopyTo
'      Parameter: Type=System.Array, Name=array
'      Parameter: Type=System.Int32, Name=index
'    Member: Count
'      Accessor method: Int32 get_Count()
'    Member: SyncRoot
'      Accessor method: System.Object get_SyncRoot()
'    Member: IsSynchronized
'      Accessor method: Boolean get_IsSynchronized()
'

Poznámky

Objekt AssemblyName obsahuje informace o sestavení, které lze použít k vytvoření vazby na toto sestavení. Identita sestavení se skládá z následujících:

  • Jednoduchý název.
  • Číslo verze.
  • Pár kryptografických klíčů.
  • Podporovaná jazyková verze

Jednoduchý název je obvykle název souboru manifestu bez jeho přípony. Pár klíčů obsahuje veřejný a privátní klíč, který slouží k vytvoření podpisů silného názvu pro sestavení.

Všechny kompilátory, které podporují modul CLR (Common Language Runtime), budou generovat jednoduchý název vnořené třídy a reflexe při dotazování vytvoří manglovaný název v souladu s následujícími konvencemi.

Oddělovač Význam
Zpětné lomítko (\) Řídicí znak.
Čárka (,) Předchází názvu sestavení.
Znaménko plus (+) Předchází vnořené třídě.

Plně kvalifikovaný název třídy může vypadat například takto:

ContainingClass+NestedClass,MyAssembly

"++" se stane \+\+" a "\" se změní na \\.

Tento kvalifikovaný název lze zachovat a později použít k načtení Type. Chcete-li vyhledat a načíst Type, použijte GetType buď pouze s názvem typu, nebo s názvem kvalifikovaného typu sestavení. GetType s názvem typu bude hledat Type pouze v sestavení volajícího a potom v sestavení Systému. GetType s názvem kvalifikovaného typu sestavení bude hledat v libovolném Type sestavení.

Plně zadaný AssemblyName parametr musí mít název, jazykovou verzi, veřejný klíč nebo token veřejného klíče, hlavní verzi, podverzi, číslo buildu a parametry čísla revize. Poslední čtyři jsou zabalené v Version typu.

Chcete-li vytvořit jednoduchý název, vytvořte AssemblyName objekt pomocí konstruktoru bez parametrů a nastavte Name. Ostatní vlastnosti jsou volitelné.

Chcete-li vytvořit úplný silný název, vytvořte AssemblyName objekt pomocí konstruktoru bez parametrů a nastavte a KeyPairName . Ostatní vlastnosti jsou volitelné. Použijte SetPublicKey a SetPublicKeyToken nastavte veřejný klíč a silný název. Podpis silného SHA1 názvu vždy používá algoritmus hash.

Chcete-li zajistit správné vytvoření názvů, použijte následující vlastnosti:

Název můžete získat také pomocí /l možnosti sGacutil.exe (nástroj globální mezipaměti sestavení).

Pro částečně zadaný silný název vytvořte AssemblyName objekt pomocí konstruktoru bez parametrů a nastavte název a veřejný klíč. Sestavení vytvořené pomocí takového AssemblyName lze podepsat později pomocí Linker sestavení (Al.exe).

Veřejný klíč a KeyPair nekonzistentní hodnoty je možné zadat. To může být užitečné ve scénářích pro vývojáře. V tomto případě veřejný klíč načtený pomocí GetPublicKey určuje správný veřejný klíč, zatímco KeyPair určuje veřejné a privátní klíče používané při vývoji. Když modul runtime zjistí neshodu mezi KeyPair veřejným klíčem a veřejným klíčem, vyhledá v registru správný klíč, který odpovídá veřejnému klíči.

Formát zobrazovaného názvu je AssemblyName řetězec Unicode oddělený čárkami, který začíná názvem následujícím způsobem:

Name <,Culture = CultureInfo> <,Version = Major.Minor.Build.Revision> <, StrongName> <,PublicKeyToken> '\0'

Name je textový název sestavení. CultureInfo je jazyková verze definovaná RFC1766 formátem. Major, Minor, Builda Revision jsou hlavní verze, podverze, číslo sestavení a číslo revize sestavení. StrongName je šestnáctkové kódování s nízkým pořadím 64 bitů hodnoty hash veřejného klíče vygenerovaného pomocí algoritmu hash SHA-1 a veřejného klíče určeného SetPublicKey. PublicKeyToken je šestnáctkový veřejný klíč zakódovaný znakem SetPublicKey.

Šestnáctkové kódování je definováno jako převod každého bajtu binárního objektu na dva šestnáctkové znaky, které postupuje od nejmenšího k nejvýznamnějšímu bajtu. Podle potřeby se přidají další zobrazované hodnoty.

Pokud je známý úplný veřejný klíč, může být PublicKey nahrazen StrongName.

Všimněte si také, že s výjimkou Name, které musí přijít jako první, lexikální pořadí parametrů je nedůležité. Jakýkoli parametr (Version, StrongNameCulturenebo ), který PublicKeynení výslovně nastaven, je však považován za vynechaný a AssemblyName pak se považuje za částečný. Při zadávání částečných informací musí být parametry názvu zadány v pořadí popsaném výše.

Při zadávání zobrazovaného názvu se vyžaduje konvence StrongName =null nebo PublicKey= null označuje, že vazba a porovnávání s jednoduchým pojmenovaným sestavením. Kromě toho konvence Culture= "" (dvojitá uvozovka představující prázdný řetězec) označuje porovnávání s výchozí jazykovou verzí.

Následující příklad ukazuje AssemblyName pro jednoduše pojmenované sestavení s výchozí jazykovou verzí.

ExampleAssembly, Culture=""

Následující příklad ukazuje plně definovaný odkaz pro sestavení se silným názvem a kulturou "en".

ExampleAssembly, Version=1.0.0.0, Culture=en, PublicKeyToken=a5d015c7d5a0b012

Konstruktory

Name Description
AssemblyName()

Inicializuje novou instanci AssemblyName třídy.

AssemblyName(String)

Inicializuje novou instanci AssemblyName třídy se zadaným zobrazovaným názvem.

Vlastnosti

Name Description
CodeBase
Zastaralé.

Získá nebo nastaví umístění sestavení jako adresu URL.

ContentType

Získá nebo nastaví hodnotu, která označuje, jaký typ obsahu sestavení obsahuje.

CultureInfo

Získá nebo nastaví jazykovou verzi podporovanou sestavením.

CultureName

Získá nebo nastaví název jazykové verze přidružené k sestavení.

EscapedCodeBase
Zastaralé.

Získá identifikátor URI, včetně řídicích znaků, který představuje základ kódu.

Flags

Získá nebo nastaví atributy sestavení.

FullName

Získá úplný název sestavení, označovaný také jako zobrazovaný název.

HashAlgorithm
Zastaralé.

Získá nebo nastaví hashovací algoritmus používaný manifestem sestavení.

KeyPair
Zastaralé.

Získá nebo nastaví veřejný a privátní kryptografický klíč pár, který se používá k vytvoření podpis silného názvu sestavení.

Name

Získá nebo nastaví jednoduchý název sestavení. To je obvykle, ale ne nutně, název souboru manifestu sestavení, minus jeho přípona.

ProcessorArchitecture
Zastaralé.

Získá nebo nastaví hodnotu, která identifikuje procesor a bity na slovo platformy cílené spustitelným souborem.

Version

Získá nebo nastaví hlavní, vedlejší, sestavení a revizní čísla sestavení.

VersionCompatibility
Zastaralé.

Získá nebo nastaví informace související s kompatibilitou sestavení s jinými sestaveními.

Metody

Name Description
Clone()

Vytvoří kopii tohoto AssemblyName objektu.

Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
GetAssemblyName(String)

AssemblyName Získá pro daný soubor.

GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetObjectData(SerializationInfo, StreamingContext)
Zastaralé.

Získá serializační informace se všemi daty potřebnými k opětovnému vytvoření instance tohoto AssemblyNameobjektu .

GetPublicKey()

Získá veřejný klíč sestavení.

GetPublicKeyToken()

Získá token veřejného klíče, což je posledních 8 bajtů hodnoty hash SHA-1 veřejného klíče, pod kterým je aplikace nebo sestavení podepsáno.

GetType()

Získá Type aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
OnDeserialization(Object)

Implementuje ISerializable rozhraní a je volána zpět deserializační událostí při dokončení deserializace.

ReferenceMatchesDefinition(AssemblyName, AssemblyName)

Vrátí hodnotu určující, zda jsou dva názvy sestavení stejné. Porovnání vychází z jednoduchých názvů sestavení.

SetPublicKey(Byte[])

Nastaví veřejný klíč identifikující sestavení.

SetPublicKeyToken(Byte[])

Nastaví token veřejného klíče, což je posledních 8 bajtů hodnoty hash SHA-1 veřejného klíče, pod kterým je aplikace nebo sestavení podepsána.

ToString()

Vrátí úplný název sestavení, označovaný také jako zobrazovaný název.

Explicitní implementace rozhraní

Name Description
_AssemblyName.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Mapuje sadu názvů na odpovídající sadu identifikátorů pro rozesílání.

_AssemblyName.GetTypeInfo(UInt32, UInt32, IntPtr)

Načte informace o typu objektu, který lze použít k získání informací o typu pro rozhraní.

_AssemblyName.GetTypeInfoCount(UInt32)

Získá počet rozhraní typu informací, které objekt poskytuje (0 nebo 1).

_AssemblyName.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Poskytuje přístup k vlastnostem a metodám vystaveným objektem.

Platí pro

Viz také