Marshal.GetIDispatchForObject(Object) Yöntem

Tanım

Yönetilen nesneden bir IDispatch arabirimi döndürür.

public:
 static IntPtr GetIDispatchForObject(System::Object ^ o);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static IntPtr GetIDispatchForObject(object o);
public static IntPtr GetIDispatchForObject(object o);
[System.Security.SecurityCritical]
public static IntPtr GetIDispatchForObject(object o);
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member GetIDispatchForObject : obj -> nativeint
static member GetIDispatchForObject : obj -> nativeint
[<System.Security.SecurityCritical>]
static member GetIDispatchForObject : obj -> nativeint
Public Shared Function GetIDispatchForObject (o As Object) As IntPtr

Parametreler

o
Object

Arabirimi istenen nesne IDispatch .

Döndürülenler

IntPtr

nativeint

IDispatch Parametresinin işaretçisio.

Öznitelikler

Özel durumlar

o istenen arabirimi desteklemiyor.

Açıklamalar

Yönetilen kodda, nadiren doğrudan arabirimle IDispatch çalışırsınız. Ancak, GetIDispatchForObject bir COM nesne parametresini tür olarak veya özel hazırlama ile kullanıma sunan bir IntPtr yöntemi çağırırken yararlıdır. Bir nesneyi bu yöntemle çağırmak, işaretçi döndürülmeden önce arabirim işaretçisinde başvuru sayısının artmalarına neden olur. İşaretçiyle işiniz bittiğinde her zaman başvuru sayısını azaltmaya yönelik kullanın Marshal.Release .

Bu yöntemi yönetilen bir nesne üzerinde kullanarak nesne için COM çağrılabilen sarmalayıcıya arabirim işaretçisi de alabilirsiniz. Ek bilgi için bkz. COM Çağrılabilen Sarmalayıcı.

Şunlara uygulanır

Ayrıca bkz.