Aracılığıyla paylaş


IMetaDataEmit::DefineImportMember Method

Geçerli kapsamın dışında tanımlanan bir türün veya modülün belirtilen üyesine başvuru oluşturur ve bu başvuru için bir belirteç tanımlar.

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 [in] Hedef üyenin içeri aktarıldığı derlemeyi temsil eden bir IMetaDataAssemblyImport arabirimi.

pbHashValue [in] tarafından pAssemImportbelirtilen derlemenin karması içeren bir dizi.

cbHashValue [in] Dizideki pbHashValue bayt sayısı.

pImport [in] Hedef üyenin içeri aktarıldığı meta veri kapsamını temsil eden bir IMetaDataImport arabirimi.

mbMember [in] Hedef üyeyi belirten meta veri belirteci. Belirteç bir mdMethodDef (üye yöntemi için), mdProperty (üye özelliği için) veya mdFieldDef (üye alanı için) belirteci olabilir.

pAssemEmit [in] Hedef üyenin içeri aktarıldığı derlemeyi temsil eden bir IMetaDataAssemblyEmit arabirimi.

tkParent [in] mdTypeRef Hedef üyeye sahip olan türün veya modülün veya mdModuleRef belirteci sırasıyla.

pmr [out] Üye mdMemberRef başvurusu için geçerli kapsamda tanımlanan belirteç.

Remarks

DefineImportMember yöntemi, tarafından mbMemberbelirtilen ve tarafından belirtilen başka bir kapsamda pImporttanımlanan üyeyi arar ve özelliklerini alır. Üye başvuruyu oluşturmak için geçerli kapsamdaki IMetaDataEmit::D efineMemberRef yöntemini çağırmak için bu bilgileri kullanır.

Genellikle, yöntemini kullanmadan önce geçerli kapsamda hedef üyenin DefineImportMember üst sınıfı, arabirimi veya modülü için bir tür başvurusu veya modül başvurusu oluşturmanız gerekir. Bu başvurunun meta veri belirteci bağımsız değişkenine tkParent geçirilir. Daha sonra derleyici veya bağlayıcı tarafından çözümlenecekse, hedef üyenin üst öğesine bir başvuru oluşturmanız gerekmez. To summarize:

  • Hedef üye bir alan veya yöntemse, üyenin üst sınıfı veya üst arabirimi için geçerli kapsamda bir tür başvurusu oluşturmak için IMetaDataEmit::D efineTypeRefByName veya IMetaDataEmit::D efineImportType yöntemini kullanın.

  • Hedef üye bir genel değişken veya genel işlevse (yani, bir sınıfın veya arabirimin üyesi değilse), üyenin üst modülü için geçerli kapsamda bir modül başvurusu oluşturmak üzere IMetaDataEmit::D efineModuleRef yöntemini kullanın.

  • Hedef üyenin üst öğesi daha sonra derleyici veya bağlayıcı tarafından çözümlenecekse, geçirin mdTokenNiltkParent. Bunun geçerli olduğu tek senaryo, genel bir işlevin veya genel değişkenin, sonuçta geçerli modüle bağlanacak bir .obj dosyasından içeri aktarılması ve meta verilerin birleştirilmesidir.

Requirements

Platform: Bkz. .NET tarafından desteklenen işletim sistemleri.

Header: Cor.h

Library: CorGuids.lib

See also