Marshal.GetComSlotForMethodInfo(MemberInfo) Metod

Definition

Hämtar den virtuella funktionstabellen (v-table eller VTBL) för en angiven MemberInfo typ när den typen exponeras för COM.

public:
 static int GetComSlotForMethodInfo(System::Reflection::MemberInfo ^ m);
public static int GetComSlotForMethodInfo(System.Reflection.MemberInfo m);
[System.Security.SecurityCritical]
public static int GetComSlotForMethodInfo(System.Reflection.MemberInfo m);
static member GetComSlotForMethodInfo : System.Reflection.MemberInfo -> int
[<System.Security.SecurityCritical>]
static member GetComSlotForMethodInfo : System.Reflection.MemberInfo -> int
Public Shared Function GetComSlotForMethodInfo (m As MemberInfo) As Integer

Parametrar

m
MemberInfo

Ett objekt som representerar en gränssnittsmetod.

Returer

VTBL-fackidentifieraren m när den exponeras för COM.

Attribut

Undantag

Parametern m är null.

Parametern m är inte ett MemberInfo objekt.

-eller-

Parametern m är inte en gränssnittsmetod.

Kommentarer

Det nollbaserade facknumret som returneras av den här metoden står för tre IUnknown - och eventuellt fyra IDispatch-metoder , vilket gör värdet för det första tillgängliga facket antingen 3 eller 7. GetComSlotForMethodInfo ger motsatta funktioner i Marshal.GetMethodInfoForComSlot.

Du kan använda den här metoden för att hämta facknummer för medlemmar i gränssnitt som inte är synliga från COM och för medlemmar i privata gränssnitt. De nummer som returneras motsvarar de v-tabellnummer som skulle reserveras om typen exponerades för COM. COM-osynliga medlemmar upptar faktiskt en plats i en exponerad v-tabell, även om COM-klienten inte kan använda facket. Du kan inte använda GetComSlotForMethodInfo i ett klassgränssnitt genom att skicka MemberInfo från en klass. Mer information finns i Introduktion till klassgränssnittet.

Gäller för

Se även