Methode IMetaDataDispenser::OpenScope
Hiermee opent u een bestaand bestand op schijf en wijst u de metagegevens toe aan het geheugen.
Syntaxis
HRESULT OpenScope (
[in] LPCWSTR szScope,
[in] DWORD dwOpenFlags,
[in] REFIID riid,
[out] IUnknown **ppIUnk
);
Parameters
szScope
[in] De naam van het bestand dat moet worden geopend. Het bestand moet clr-metagegevens (Common Language Runtime) bevatten.
dwOpenFlags
[in] Een waarde van de CorOpenFlags-opsomming om de modus (lezen, schrijven, enzovoort) voor het openen op te geven.
riid
[in] De IID van de gewenste metagegevensinterface die moet worden geretourneerd; de aanroeper gebruikt de interface om metagegevens te importeren (lezen) of te verzenden (schrijven).
De waarde van riid
moet een van de interfaces 'importeren' of 'verzenden' opgeven. Geldige waarden zijn IID_IMetaDataEmit, IID_IMetaDataImport, IID_IMetaDataAssemblyEmit, IID_IMetaDataAssemblyImport, IID_IMetaDataEmit2 of IID_IMetaDataImport2.
ppIUnk
[uit] De aanwijzer naar de geretourneerde interface.
Opmerkingen
De in-memory kopie van de metagegevens kan worden opgevraagd met behulp van methoden van een van de 'import'-interfaces, of worden toegevoegd aan het gebruik van methoden van een van de 'emit'-interfaces.
Als het doelbestand geen CLR-metagegevens bevat, mislukt de OpenScope
methode.
Als in de .NET Framework versie 1.0 en versie 1.1 een bereik wordt geopend met dwOpenFlags
ingesteld op ofRead, komt het in aanmerking voor delen. Dat wil dus, als volgende aanroepen om de naam van een eerder geopend bestand door te OpenScope
geven, het bestaande bereik opnieuw wordt gebruikt en er geen nieuwe set gegevensstructuren wordt gemaakt. Er kunnen echter problemen ontstaan als gevolg van dit delen.
In .NET Framework versie 2.0 worden bereiken die zijn geopend met dwOpenFlags
de instelling ofRead, niet meer gedeeld. Gebruik de waarde ofReadOnly om het bereik te kunnen delen. Wanneer een bereik wordt gedeeld, mislukken query's die gebruikmaken van metagegevensinterfaces voor lezen/schrijven.
Vereisten
Platforms: Zie Systeemvereisten.
Header: Cor.h
Bibliotheek: Wordt gebruikt als een resource in MsCorEE.dll
.NET Framework versies: beschikbaar sinds 1.0