Marshal.GetIDispatchForObject(Object) Yöntem

Tanım

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

C#
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static IntPtr GetIDispatchForObject(object o);
C#
public static IntPtr GetIDispatchForObject(object o);
C#
[System.Security.SecurityCritical]
public static IntPtr GetIDispatchForObject(object o);

Parametreler

o
Object

Arabirimi istenen nesne IDispatch .

Döndürülenler

IntPtr

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

Ürün Sürümler
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.1

Ayrıca bkz.