Freigeben über


IRoSimpleMetaDataBuilder-Struktur (roparameterizediid.h)

Stellt einen Metadatenlocator mit einem Ziel für die ermittelten Metadaten bereit.

Dieses Member unterstützt die Windows-Runtime-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

Syntax

struct IRoSimpleMetaDataBuilder {
  HRESULT SetWinRtInterface(
    GUID iid
  );
  HRESULT SetDelegate(
    GUID iid
  );
  HRESULT SetInterfaceGroupSimpleDefault(
    PCWSTR     name,
    PCWSTR     defaultInterfaceName,
    const GUID *defaultInterfaceIID
  );
  HRESULT SetInterfaceGroupParameterizedDefault(
    PCWSTR name,
    UINT32 elementCount,
    PCWSTR *defaultInterfaceNameElements
  );
  HRESULT SetRuntimeClassSimpleDefault(
    PCWSTR     name,
    PCWSTR     defaultInterfaceName,
    const GUID *defaultInterfaceIID
  );
  HRESULT SetRuntimeClassParameterizedDefault(
    PCWSTR       name,
    UINT32       elementCount,
    const PCWSTR *defaultInterfaceNameElements
  );
  HRESULT SetStruct(
    PCWSTR       name,
    UINT32       numFields,
    const PCWSTR *fieldTypeNames
  );
  HRESULT SetEnum(
    PCWSTR name,
    PCWSTR baseType
  );
  HRESULT SetParameterizedInterface(
    GUID   piid,
    UINT32 numArgs
  );
  HRESULT SetParameterizedDelegate(
    GUID   piid,
    UINT32 numArgs
  );
};

Member

HRESULT SetWinRtInterface( GUID iid)

Weist dem Metadaten-Generator eine Windows-Runtime-Schnittstelle zu.

IInspectable- und andere Nicht-Windows-Runtime-Schnittstellen sind nicht zulässig. Nicht für die Verwendung mit parametrisierten Typinstanzen.

Iid

Die IID für die Schnittstelle.

HRESULT SetDelegate( GUID iid)

Weist dem Metadaten-Generator einen Delegaten zu.

Iid

COM-Schnittstelle IID für den angegebenen Delegattyp.

HRESULT SetInterfaceGroupSimpleDefault( PCWSTR name, PCWSTR defaultInterfaceName, const GUID *defaultInterfaceIID)

Weist dem Metadaten-Generator eine Schnittstellengruppe zu.

name

Der vollqualifizierte Name des angegebenen Schnittstellengruppentyps.

defaultInterfaceName

Der vollqualifizierte Name der Standardschnittstelle (muss ein nicht parametrischer Typ sein).

defaultInterfaceIID

Optional. Bei NULL wird ein separater Aufruf ausgeführt, um den Standardschnittstellentyp aufzulösen. Wenn nicht NULL, zeiger auf eine GUID, die die IID für die Standardschnittstelle mit dem Namen defaultInterfaceName enthält.

HRESULT SetInterfaceGroupParameterizedDefault( PCWSTR name, UINT32 elementCount, PCWSTR *defaultInterfaceNameElements)

Weist dem Metadaten-Generator eine Schnittstellengruppe mit einer parametrisierten Schnittstelle als Standardschnittstelle zu.

Rufen Sie diese Methode auf, wenn eine Schnittstellengruppe über eine parametrisierte Schnittstelle als Standardschnittstelle verfügt.

name

Der vollqualifizierte Name des angegebenen Schnittstellengruppentyps.

elementCount

Die Anzahl der Elemente im Array defaultInterfaceNameElements .

defaultInterfaceNameElements

Ein Array, wie von RoParseTypeName zurückgegeben wird, das einen parametrisierten Typ instance angibt.

HRESULT SetRuntimeClassSimpleDefault( PCWSTR name, PCWSTR defaultInterfaceName, const GUID *defaultInterfaceIID)

Weist dem Metadaten-Generator eine Laufzeitklasse zu.

name

Der vollqualifizierte Name des angegebenen Laufzeitklassentyps.

defaultInterfaceName

Der vollqualifizierte Name der Standardschnittstelle (muss ein nicht parametrischer Typ sein).

defaultInterfaceIID

Optional. Bei NULL wird ein separater Aufruf ausgeführt, um den Standardschnittstellentyp aufzulösen. Wenn nicht NULL, zeiger auf eine GUID, die die IID für die Standardschnittstelle mit dem Namen defaultInterfaceName enthält.

HRESULT SetRuntimeClassParameterizedDefault( PCWSTR name, UINT32 elementCount, const PCWSTR *defaultInterfaceNameElements)

Weist dem Metadaten-Generator eine parametrisierte Laufzeitklasse zu.

name

Der vollqualifizierte Name des angegebenen Laufzeitklassentyps.

elementCount

Die Anzahl der Elemente im Array defaultInterfaceNameElements .

defaultInterfaceNameElements

Ein Array, wie von RoParseTypeName zurückgegeben wird, das einen parametrisierten Typ instance angegeben hat.

HRESULT SetStruct( PCWSTR name, UINT32 numFields, const PCWSTR *fieldTypeNames)

Weist dem Metadaten-Generator eine -Struktur zu.

name

Der vollqualifizierte Name des angegebenen Strukturtyps.

Numfields

Die Anzahl der Felder in der -Struktur, die die Länge des FieldTypeNames-Arrays angibt.

fieldTypeNames

Ein Array von Zeichenfolgen, das die Typen der einzelnen Felder in der Struktur in der Reihenfolge angibt, in der sie in den Metadaten angezeigt werden. Diese Reihenfolge entspricht der Layoutreihenfolge im Arbeitsspeicher.

HRESULT SetEnum( PCWSTR name, PCWSTR baseType)

Weist dem Metadaten-Generator eine Enumeration zu.

Der BaseType von einfachen Enumerationen ist standardmäßig Int32. Der BaseType von Flags-Enumerationen ist standardmäßig UInt32.

name

Der vollqualifizierte Name des angegebenen Enumerationstyps.

baseType

Der Basistyp der Enumeration, wie in den Metadaten angegeben.

HRESULT SetParameterizedInterface( GUID piid, UINT32 numArgs)

Weist dem Metadaten-Generator eine parametrisierte Schnittstelle zu.

Diese Methode gilt nur für die nicht instanziierte parametrisierte Schnittstelle. Instanzen werden von RoGetParameterizedTypeInstanceIID behandelt, und der Aufrufer muss sie nicht analysieren.

piid

Die IID des angegebenen parametrisierten Schnittstellentyps.

numArgs

Die Anzahl der Typargumente, die für den angegebenen parametrisierten Schnittstellentyp erforderlich sind.

HRESULT SetParameterizedDelegate( GUID piid, UINT32 numArgs)

Weist dem Metadaten-Generator einen parametrisierten Delegaten zu.

Diese Methode gilt nur für die nicht instanziierte parametrisierte Schnittstelle. Instanzen werden von RoGetParameterizedTypeInstanceIID behandelt, und der Aufrufer muss sie nicht analysieren.

piid

Die IID des angegebenen parametrisierten Delegattyps.

numArgs

Die Anzahl der Typargumente, die für den angegebenen parametrisierten Delegattyp erforderlich sind.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 [nur Desktop-Apps]
Kopfzeile roparameterizediid.h