Метод IMetaDataDispenser::OpenScopeOnMemory
Открывает область памяти, содержащую существующие метаданные. Иными словами, этот метод открывает заданную область памяти, в которой существующие данные интерпретируются как метаданные.
HRESULT OpenScopeOnMemory (
[in] LPCVOID pData,
[in] ULONG cbData,
[in] DWORD dwOpenFlags,
[in] REFIID riid,
[out] IUnknown **ppIUnk
);
Параметры
pData
[in] Указатель, задающий начальный адрес области памяти.cbData
[in] Размер области памяти (в байтах).dwOpenFlags
[in] Значение перечисления CorOpenFlags, позволяющее задать режим открытия (чтение, запись, и т. д.).riid
[in] Подлежащее возврату значение IID необходимого интерфейса метаданных; вызывающий объект будет использовать этот интерфейс для импорта (чтение) или выдачи метаданных (запись).Значение параметра riid должно задавать один из интерфейсов "импорта" или "выдачи". Допустимыми значениями являются IID_IMetaDataEmit, IID_IMetaDataImport, IID_IMetaDataAssemblyEmit, IID_IMetaDataAssemblyImport, IID_IMetaDataEmit2 или IID_IMetaDataImport2.
ppIUnk
[out] Указатель на возвращенный интерфейс.
Заметки
Копию метаданных в памяти можно запросить с помощью методов одного из интерфейсов "импорта" или добавить в методы одного из интерфейсов "выдачи".
Метод OpenScopeOnMemory аналогичен методу IMetaDataDispenser::OpenScope, за тем исключением, что интересующие метаданные уже существуют в памяти, а не в файле или на диске.
Если целевая область памяти не содержит метаданные среды CLR, метод OpenScopeOnMemory вызовет сбой.
Требования
Платформа: см. Требования к системе для .NET Framework.
Заголовок: Cor.h
Библиотека: используется как ресурс в MsCorEE.dll
Версии платформы .NET Framework: 4, 3.5 с пакетом обновления 1 (SP1), 3.5, 3.0 с пакетом обновления 1 (SP1), 3.0, 2.0 с пакетом обновления 1 (SP1), 2.0, 1.1, 1.0
См. также
Ссылки
Интерфейс IMetaDataDispenserEx
Интерфейс IMetaDataAssemblyEmit