GetMethodInfoForComSlot Method
Collapse the table of content
Expand the table of content

Marshal.GetMethodInfoForComSlot Method

Retrieves MethodInfo for the specified virtual function table (VTBL) slot.

[Visual Basic]
Public Shared Function GetMethodInfoForComSlot( _
   ByVal t As Type, _
   ByVal slot As Integer, _
   ByRef memberType As ComMemberType _
) As MemberInfo
public static MemberInfo GetMethodInfoForComSlot(
 Type t,
 int slot,
   ref ComMemberType memberType
public: static MemberInfo* GetMethodInfoForComSlot(
 Type* t,
 int slot,
 ComMemberType* memberType
public static function GetMethodInfoForComSlot(
   t : Type,
 slot : int,
 memberType : ComMemberType
) : MemberInfo;


The type for which the MethodInfo is to be retrieved.
The VTBL slot.
On successful return, the type of the member. This is one of the ComMemberType enumeration members.

Return Value

The MemberInfo that represents the member at the specified VTBL (also called v-table) slot.


Exception Type Condition
ArgumentException t is not visible from COM.


The zero-based slot number returned by this method accounts for three IUnknown and possibly four IDispatch methods, making the value of the first available slot either 3 or 7. GetMethodInfoForComSlot provides the opposite functionality of Marshal.GetComSlotForMethodInfo. You can use Marshal.GetEndComSlot and Marshal.GetStartComSlot in conjunction with GetMethodInfoForComSlot to pass slots within a specified range.

The memberType parameter is only important on return. It contains the type of the COM member that corresponds to the returned MemberInfo: a regular method or a property accessor (get, set, or other).

Note   This method uses SecurityAction.LinkDemand to prevent it from being called from untrusted code; only the immediate caller is required to have SecurityPermissionAttribute.UnmanagedCode permission. If your code can be called from partially trusted code, do not pass user input to Marshal class methods without validation. For important limitations on using the LinkDemand member, see Demand vs. LinkDemand.


Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

.NET Framework Security: 

See Also

Marshal Class | Marshal Members | System.Runtime.InteropServices Namespace | GetComSlotForMethodInfo | GetEndComSlot | GetStartComSlot | ComMemberType

© 2016 Microsoft