Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Разрешает модуль в сборке или связанном (но не внедренном) файле ресурсов.
Синтаксис
HRESULT ProvideModule (
[in] ModuleBindInfo *pBindInfo,
[out] DWORD *pdwModuleId,
[out] IStream **ppStmModuleImage,
[out] IStream **ppStmPDB
);
Параметры
pBindInfo
[in] Указатель на экземпляр ModuleBindInfo , описывающий, сборку и имя модуля запрошенного модуля AppDomain.
pdwModuleId
[out] Указатель на уникальный идентификатор объекта , IStream содержащего загруженный модуль.
ppStmModuleImage
[out] Указатель на адрес объекта , который содержит загружаемый образ переносимого IStream исполняемого файла (PE), или значение NULL, если не удалось найти модуль.
ppStmPDB
[out] Указатель на адрес IStream объекта , который содержит сведения об отладке программы (PDB) для запрошенного модуля, или значение NULL, если не удалось найти PDB-файл.
Возвращаемое значение
| HRESULT | Описание: |
|---|---|
| S_OK |
ProvideModule возвращается успешно. |
| HOST_E_CLRNOTAVAILABLE | Среда CLR не была загружена в процесс или среда CLR находится в состоянии, в котором она не может выполнить управляемый код или обработать вызов. |
| HOST_E_TIMEOUT | Истекло время ожидания звонка. |
| HOST_E_NOT_OWNER | Вызывающий объект не является владельцем блокировки. |
| HOST_E_ABANDONED | Событие было отменено во время ожидания заблокированного потока или волокна. |
| E_FAIL | Произошла неизвестная катастрофическая ошибка. Когда метод возвращает E_FAIL, среда CLR больше не поддерживается в процессе. Последующие вызовы методов размещения возвращают HOST_E_CLRNOTAVAILABLE. |
| COR_E_FILENOTFOUND (0x80070002) | Не удалось найти запрошенную сборку или связанный ресурс. |
| E_NOT_SUFFICIENT_BUFFER |
pdwModuleId не достаточно большой, чтобы содержать идентификатор, который узел хочет вернуть. |
Комментарии
Значение идентификатора, возвращаемое для pdwModuleId , задается узлом. Идентификаторы должны быть уникальными в течение времени существования процесса. Среда CLR использует это значение в качестве уникального идентификатора связанного потока. Он проверяет каждое значение на соответствие значениям, pAssemblyId возвращаемым вызовами ProvideAssembly, и значениям , pdwModuleId возвращенным другими вызовами .ProvideModule Если узел возвращает то же значение идентификатора для другого IStream, среда CLR проверяет, сопоставлено ли содержимое этого потока. Если это так, среда CLR загружает существующую копию образа, а не сопоставляет новую. Поэтому идентификатор также не должен перекрываться с идентификаторами сборки, возвращаемыми из ProvideAssembly.
Требования
Платформы: см. раздел Требования к системе.
Заголовка: MSCorEE.h
Библиотека: Включено в качестве ресурса в MSCorEE.dll
версии платформа .NET Framework: доступно с версии 2.0