Share via


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 arabirimiyle 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. Bu yöntemle bir nesnenin çağrılması, başvuru sayısının işaretçi döndürülmeden önce arabirim işaretçisinde artmalarına neden olur. İşaretçiyle işiniz bittiğinde başvuru sayısını azaltmaya yönelik her zaman kullanın Marshal.Release .

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

Şunlara uygulanır

Ayrıca bkz.