IMetaDataAssemblyImport

更新:2007 年 11 月

提供访问和检查程序集清单内容的方法。

interface IMetaDataAssemblyImport : IUnknown {
        
    HRESULT CloseEnum (
        HCORENUM hEnum
    );
        
    HRESULT EnumAssemblyRefs (
        [in, out] HCORENUM    *phEnum, 
        [out] mdAssemblyRef rAssemblyRefs[], 
        [in]  ULONG       cMax, 
        [out] ULONG       *pcTokens
    );
        
    HRESULT EnumExportedTypes (
        [in, out] HCORENUM    *phEnum, 
        [out] mdExportedType   rExportedTypes[], 
        [in]  ULONG       cMax, 
        [out] ULONG       *pcTokens
    );
        
    HRESULT EnumFiles (
        [in, out] HCORENUM    *phEnum, 
        [out] mdFile      rFiles[], 
        [in]  ULONG       cMax, 
        [out] ULONG       *pcTokens
    );
        
    HRESULT EnumManifestResources (
        [in, out] HCORENUM    *phEnum, 
        [out] mdManifestResource  rManifestResources[], 
        [in]  ULONG       cMax, 
        [out] ULONG       *pcTokens
    ); 
        
    HRESULT FindAssembliesByName (
        [in]  LPCWSTR  szAppBase, 
        [in]  LPCWSTR  szPrivateBin, 
        [in]  LPCWSTR  szAssemblyName, 
        [out] IUnknown *ppIUnk[], 
        [in]  ULONG    cMax, 
        [out] ULONG    *pcAssemblies
    );
        
    HRESULT FindExportedTypeByName (
        [in]  LPCWSTR     szName, 
        [in]  mdToken     mdtExportedType, 
        [out] mdExportedType   *ptkExportedType
    );
        
    HRESULT FindManifestResourceByName (
        [in]  LPCWSTR     szName, 
        [out] mdManifestResource *ptkManifestResource
    ); 
        
    HRESULT GetAssemblyFromScope (
        [out] mdAssembly  *ptkAssembly
    );
        
    HRESULT GetAssemblyProps (
        [in]  mdAssembly  mda,
        [out] const void  **ppbPublicKey, 
        [out] ULONG       *pcbPublicKey,
        [out] ULONG       *pulHashAlgId,
        [out] LPWSTR      szName,
        [out] ULONG       cchName,
        [out] ULONG       *pchName,
        [out] ASSEMBLYMETADATA *pMetaData,
        [out] DWORD       *pdwAssemblyFlags
    );
        
    HRESULT GetAssemblyRefProps (
        [in]  mdAssemblyRef mdar, 
        [in]  const void  **ppbPublicKeyOrToken, 
        [out] ULONG       *pcbPublicKeyOrToken, 
        [out] LPWSTR      szName, 
        [in]  ULONG       cchName, 
        [out] ULONG       *pchName, 
        [out] ASSEMBLYMETADATA *pMetaData, 
        [out] const void  **ppbHashValue, 
        [out] ULONG       *pcbHashValue, 
        [out] DWORD       *pdwAssemblyRefFlags
    );
        
    HRESULT GetExportedTypeProps (
        [in]  mdExportedType   mdct, 
        [out] LPWSTR      szName, 
        [in]  ULONG       cchName, 
        [out] ULONG       *pchName, 
        [out] mdToken     *ptkImplementation, 
        [out] mdTypeDef   *ptkTypeDef, 
        [out] DWORD       *pdwExportedTypeFlags
    );
        
    HRESULT GetFileProps (
        [in]  mdFile      mdf, 
        [out] LPWSTR      szName, 
        [in]  ULONG       cchName, 
        [out] ULONG       *pchName, 
        [out] const void  **ppbHashValue, 
        [out] ULONG       *pcbHashValue, 
        [out] DWORD       *pdwFileFlags
    );
        
    HRESULT GetManifestResourceProps (
        [in]  mdManifestResource  mdmr, 
        [out] LPWSTR      szName, 
        [in]  ULONG       cchName, 
        [out] ULONG       *pchName, 
        [out] mdToken     *ptkImplementation, 
        [out] DWORD       *pdwOffset, 
        [out] DWORD       *pdwResourceFlags
    );
        
};

方法

方法

说明

IMetaDataAssemblyImport::CloseEnum 方法

将句柄释放到指定的枚举数。

IMetaDataAssemblyImport::EnumAssemblyRefs 方法

获取一个接口指针,该指针指向一个枚举数,此枚举数包含当前元数据范围内该程序集所引用的程序集的 mdAssemblyRef 标记。

IMetaDataAssemblyImport::EnumExportedTypes 方法

获取一个接口指针,该指针指向一个枚举数,此枚举数包含当前元数据范围内该程序集所引用的 COM 类型的 mdExportedType 标记。

IMetaDataAssemblyImport::EnumFiles 方法

获取一个接口指针,该指针指向一个枚举数,此枚举数包含当前元数据范围内该程序集所引用的文件的 mdFile 标记。

IMetaDataAssemblyImport::EnumManifestResources 方法

获取一个接口指针,该指针指向一个枚举数,此枚举数包含当前元数据范围内该程序集所引用的资源的 mdManifestResource 标记。

IMetaDataAssemblyImport::FindAssembliesByName 方法

获取一个由具有指定名称的程序集的 mdAssemblyRef 标记构成的数组。

IMetaDataAssemblyImport::FindExportedTypeByName 方法

获取一个具有指定名称的 COM 类型的 mdExportedType 标记。

IMetaDataAssemblyImport::FindManifestResourceByName 方法

获取一个具有指定名称的资源的 mdManifestResource 标记。

IMetaDataAssemblyImport::GetAssemblyFromScope 方法

获取当前元数据范围内程序集的标记。

IMetaDataAssemblyImport::GetAssemblyProps 方法

获取指定程序集的属性设置。

IMetaDataAssemblyImport::GetAssemblyRefProps 方法

获取指定的 mdAssemblyRef 标记的属性设置。

IMetaDataAssemblyImport::GetExportedTypeProps 方法

获取指定 COM 类型的属性设置。

IMetaDataAssemblyImport::GetFileProps 方法

获取指定文件的属性设置。

IMetaDataAssemblyImport::GetManifestResourceProps 方法

获取指定清单资源的属性设置。

要求

**平台:**请参见 .NET Framework 系统要求

**头文件:**Cor.h

**库:**在 MsCorEE.dll 中用作资源

**.NET Framework 版本:**3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0、1.1、1.0

请参见

参考

IMetaDataAssemblyEmit

其他资源

元数据接口