Метод IHostAssemblyManager::GetNonHostStoreAssemblies
Получает указатель интерфейса на экземпляр ICLRAssemblyReferenceList, представляющий список сборок, которые, по прогнозу основного приложения, должна загрузить среда CLR.
HRESULT GetNonHostStoreAssemblies (
[out] ICLRAssemblyReferenceList **ppReferenceList
);
Параметры
- ppReferenceList
[out] Указатель на адрес экземпляра ICLRAssemblyReferenceList, содержащего список ссылок на сборки, которые, по прогнозу основного приложения, должна загрузить среда CLR.
Возвращаемое значение
HRESULT |
Описание |
---|---|
S_OK |
Метод GetNonHostStoreAssemblies успешно возвратил значение. |
HOST_E_CLRNOTAVAILABLE |
Среда CLR не загружена в процесс или находится в состоянии, в котором ей не удается выполнить управляемый код или успешно обработать вызов. |
HOST_E_TIMEOUT |
Время ожидания вызова истекло. |
HOST_E_NOT_OWNER |
Вызывающий объект не владеет блокировкой. |
HOST_E_ABANDONED |
Событие, которого ожидал заблокированный поток или нить, было отменено. |
E_FAIL |
Произошел неизвестный разрушительный сбой. Если метод вернет значение E_FAIL, среду CLR более нельзя будет использовать в данном процессе. Последующие вызовы методов размещения возвращают значение HOST_E_CLRNOTAVAILABLE. |
E_OUTOFMEMORY |
Недостаточно памяти для создания списка ссылок для запрошенного экземпляра ICLRAssemblyReferenceList. |
Заметки
Среда CLR разрешает ссылки, используя следующий набор правил.
Сначала она проверяет список ссылок на сборки, возвращенный методом GetNonHostStoreAssemblies.
Если сборка присутствует в списке, сред CLR привязывает ее обычным образом.
Если сборка в списке отсутствует, а основное приложение предоставило реализацию интерфейса IHostAssemblyStore, среда CLR вызывает метод IHostAssemblyStore::ProvideAssembly, позволяющий основному приложению предоставить сборку, к которой нужно выполнить привязку.
В противном случае среде CLR не удается выполнить привязку сборки.
Если основное приложение присвоило параметру ppReferenceList значение NULL, среда CLR сначала проверяет глобальный кэш сборок и вызывает метод ProvideAssembly, а затем проверяет базу приложения для разрешения ссылки на сборку.
Примечание |
---|
При инициализации среда CLR вызывает метод GetNonHostStoreAssemblies только один раз.Повторно этот метод не вызывается. |
Требования
Платформы: см. раздел Требования к системе для .NET Framework.
Заголовок: MSCorEE.h
Библиотека: включена как ресурс в MSCorEE.dll
Версии платформы .NET Framework: 4, 3.5 с пакетом обновления 1 (SP1), 3.5, 3.0 с пакетом обновления 1 (SP1), 3.0, 2.0 с пакетом обновления 1 (SP1), 2.0
См. также
Ссылки
Интерфейс ICLRAssemblyReferenceList