Freigeben über


ICustomQueryInterface-Schnittstelle

 

Veröffentlicht: Oktober 2016

Ermöglicht Entwicklern das Bereitstellen einer benutzerdefinierten, verwalteten Implementierung von der IUnknown::QueryInterface(REFIID riid, void **ppvObject) Methode.

Namespace:   System.Runtime.InteropServices
Assembly:  mscorlib (in mscorlib.dll)

Syntax

[ComVisibleAttribute(false)]
public interface ICustomQueryInterface
[ComVisibleAttribute(false)]
public interface class ICustomQueryInterface
[<ComVisibleAttribute(false)>]
type ICustomQueryInterface = interface end
<ComVisibleAttribute(False)>
Public Interface ICustomQueryInterface

Methoden

Name Beschreibung
System_CAPS_pubmethod GetInterface(Guid, IntPtr)

Gibt eine Schnittstelle gemäß einer angegebenen Schnittstelle-ID

Hinweise

Diese Klasse erlaubt fortgeschrittenen Benutzern, eine benutzerdefinierte verwaltete Implementierung der bieten die QueryInterface Methode.

Verwaltete und systemeigene Clientanwendungen können die benutzerdefinierte Implementierung eine bestimmte Schnittstelle für eine angegebene Schnittstelle-ID, mit Ausnahme von IID_IUnknown zurückgeben. Wenn QueryInterface wird aufgerufen, jedoch wird ignoriert benutzerdefinierte Implementierungen der riid Parameter auf IID_IUnknown festgelegt ist. Allerdings können Sie immer noch zurückgegeben IUnknown als die ppvObject.

Entwickler können benutzerdefinierte Implementierungen für alle Schnittstellen bereitstellen (mit Ausnahme von IUnknown) definieren und implementieren eine gültige entsprechenden Schnittstelle.

Eine gültige benutzerdefinierte Schnittstelle verfügt über ein vtable-Layout, die nicht verwaltete COM-Schnittstelle genau übereinstimmt, und deren InterfaceTypeAttribute ist InterfaceIsIUnknown.

Versionsinformationen

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 4.0
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Windows Phone Silverlight
Verfügbar seit 8.0
Windows Phone
Verfügbar seit 8.1

Siehe auch

System.Runtime.InteropServices-Namespace

Zurück zum Anfang