IMetaDataDispenser::OpenScope – metoda
Otevře existující soubor na disku a namapuje jeho metadata do paměti.
Syntaxe
HRESULT OpenScope (
[in] LPCWSTR szScope,
[in] DWORD dwOpenFlags,
[in] REFIID riid,
[out] IUnknown **ppIUnk
);
Parametry
szScope
[v] Název souboru, který se má otevřít. Soubor musí obsahovat metadata modulu CLR (Common Language Runtime).
dwOpenFlags
[v] Hodnota CorOpenFlags výčtu určit režim (čtení, zápis atd.) pro otevření.
riid
[v] ID požadovaného rozhraní metadat, které má být vráceno; volající použije rozhraní k importu (čtení) nebo generování (zápisu) metadat.
Hodnota riid
musí určovat jedno z rozhraní "import" nebo "emit". Platné hodnoty jsou IID_IMetaDataEmit, IID_IMetaDataImport, IID_IMetaDataAssemblyEmit, IID_IMetaDataAssemblyImport, IID_IMetaDataEmit2 nebo IID_IMetaDataImport2.
ppIUnk
[out] Ukazatel na vrácené rozhraní.
Poznámky
Kopii metadat v paměti lze dotazovat pomocí metod z některého z rozhraní "import" nebo přidat do metody using z jednoho z rozhraní "emit".
Pokud cílový soubor neobsahuje metadata CLR, OpenScope
metoda selže.
V rozhraní .NET Framework verze 1.0 a 1.1, pokud je obor otevřen s nastavenou dwOpenFlags
na HodnotuRead, je způsobilý ke sdílení. To znamená, že pokud následná volání předávají OpenScope
název souboru, který byl dříve otevřen, existující obor se znovu použije a nová sada datových struktur se nevytvořila. Kvůli tomuto sdílení však může dojít k problémům.
V rozhraní .NET Framework verze 2.0 se obory otevřené s nastavenou dwOpenFlags
na Hodnotu Read již nesdílejí. Pokud chcete povolit sdílení oboru, použijte hodnotu ofReadOnly. Pokud je obor sdílený, dotazy, které používají rozhraní metadat pro čtení a zápis, selžou.
Požadavky
Platformy: Viz Požadavky na systém.
Záhlaví: Cor.h
Knihovny: Používá se jako prostředek v MsCorEE.dll
Verze rozhraní .NET Framework: K dispozici od verze 1.0