Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Vytvoří odkaz na zadaný člen typu nebo modulu, který je definován mimo aktuální obor, a definuje token pro tento odkaz.
Syntax
HRESULT DefineImportMember (
[in] IMetaDataAssemblyImport *pAssemImport,
[in] const void *pbHashValue,
[in] ULONG cbHashValue,
[in] IMetaDataImport *pImport,
[in] mdToken mbMember,
[in] IMetaDataAssemblyEmit *pAssemEmit,
[in] mdToken tkParent,
[out] mdMemberRef *pmr
);
Parameters
pAssemImport [v] IMetaDataAssemblyImport rozhraní, které představuje sestavení, ze kterého je cílový člen importován.
pbHashValue [v] Pole, které obsahuje hodnotu hash sestavení určeného parametrem pAssemImport.
cbHashValue [v] Počet bajtů v pbHashValue poli.
pImport [v] IMetaDataImport rozhraní, které představuje obor metadat, ze kterého je cílový člen importován.
mbMember [v] Token metadat, který určuje cílový člen. Token může být mdMethodDef token (pro metodu člena), mdProperty (pro vlastnost člena) nebo mdFieldDef (pro pole člena).
pAssemEmit [v] IMetaDataAssemblyEmit rozhraní, které představuje sestavení, do kterého je cílový člen importován.
tkParent [v] Typ mdTypeRef nebo modul nebo mdModuleRef token, který vlastní cílový člen.
pmr [ven] Token mdMemberRef definovaný v aktuálním oboru pro odkaz na člena.
Remarks
Metoda DefineImportMember vyhledá člen, určený mbMember, který je definován v jiném oboru, určený pImporta načte jeho vlastnosti. Tyto informace používá k volání IMetaDataEmit::D efineMemberRef metoda v aktuálním oboru vytvořit odkaz na člena.
Obecně platí, že před použitím DefineImportMember metody je nutné vytvořit v aktuálním oboru odkaz na typ nebo odkaz na modul pro nadřazenou třídu, rozhraní nebo modul cílového člena. Token metadat pro tento odkaz se pak předá v argumentu tkParent . Není nutné vytvořit odkaz na nadřazený objekt cílového člena, pokud bude později vyřešen kompilátorem nebo linkerem. To summarize:
Pokud je cílovým členem pole nebo metoda, použijte metodu IMetaDataEmit::D efineTypeRefByName nebo IMetaDataEmit::D efineImportType metoda vytvořit odkaz na typ v aktuálním oboru pro nadřazenou třídu člena nebo nadřazené rozhraní.
Pokud je cílovým členem globální proměnná nebo globální funkce (to znamená, že není členem třídy nebo rozhraní), použijte metodu IMetaDataEmit::D efineModuleRef k vytvoření odkazu na modul v aktuálním oboru pro nadřazený modul člena.
Pokud nadřazený objekt cílového člena později přeloží kompilátor nebo linker, předejte
mdTokenNiltkParentho . Jediný scénář, ve kterém se to týká, je, když se globální funkce nebo globální proměnná importují ze souboru .obj, který bude nakonec propojen s aktuálním modulem a sloučená metadata.
Requirements
Platformy: Viz podporované operační systémy .NET.
Header: Cor.h
Library: CorGuids.lib