IMetaDataAssemblyImport::FindAssembliesByName 方法 (rometadataapi.h)
使用公共语言运行时 (CLR) 用于解析引用的标准规则,获取具有指定名称的程序集数组。
语法
HRESULT FindAssembliesByName(
[in] LPCWSTR szAppBase,
[in] LPCWSTR szPrivateBin,
[in] LPCWSTR szAssemblyName,
[out] IUnknown * [] ppIUnk,
[in] ULONG cMax,
[out] ULONG *pcAssemblies
);
参数
[in] szAppBase
要在其中搜索给定程序集的根目录。 如果此值设置为 null, 则 FindAssembliesByName 将仅查找程序集的全局程序集缓存中。
[in] szPrivateBin
以分号分隔的子目录的列表, (例如“bin;bin2“) ,位于要在其中搜索程序集的根目录下。 除了在默认探测规则中指定的目录之外,还会探测这些目录。
[in] szAssemblyName
要查找的程序集的名称。 此字符串的格式在 AssemblyName 的类引用页中定义。
[out] ppIUnk
IUnknown 类型的数组,在其中放置 IMetadataAssemblyImport 接口指针。
[in] cMax
可以放置在 ppIUnk 中的接口指针的最大数目。
[out] pcAssemblies
返回的接口指针数。 也就是说,实际放置在 ppIUnk 中的接口指针数。
返回值
HRESULT | 说明 |
---|---|
S_OK | 已成功返回 FindAssembliesByName 。 |
S_FALSE | 没有程序集。 |
注解
给定程序集名称后, FindAssembliesByName 方法会遵循用于解析程序集引用的标准规则来查找程序集。 FindAssembliesByName 允许调用方配置程序集解析程序上下文的各个方面,例如应用程序基搜索路径和专用搜索路径。
FindAssembliesByName 返回一个 IMetaDataImport 指针,指向包含传入的程序集名称的程序集清单的文件。 如果给定的程序集名称未完全指定(例如,如果它不包含版本),则可能会返回多个程序集。
FindAssembliesByName 通常由尝试在编译时查找引用的程序集的编译器使用。
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | rometadataapi.h |