Metodo IMetaDataDispenser::OpenScope
Apre un file su disco esistente ed esegue il mapping dei relativi metadati in memoria.
HRESULT OpenScope (
[in] LPCWSTR szScope,
[in] DWORD dwOpenFlags,
[in] REFIID riid,
[out] IUnknown **ppIUnk
);
Parametri
szScope
[in] Nome del file da aprire. Il file deve contenere metadati di Common Language Runtime.dwOpenFlags
[in] Valore dell'enumerazione CorOpenFlags per specificare la modalità (lettura, scrittura e così via) di apertura.riid
[in] IID dell'interfaccia dei metadati desiderata da restituire. Il chiamante utilizzerà l'interfaccia per importare (leggere) o generare (scrivere) i metadati.Il valore di riid deve specificare una delle interfacce di "importazione" o "generazione". I valori validi sono IID_IMetaDataEmit, IID_IMetaDataImport, IID_IMetaDataAssemblyEmit, IID_IMetaDataAssemblyImport, IID_IMetaDataEmit2 e IID_IMetaDataImport2.
ppIUnk
[out] Puntatore all'interfaccia restituita.
Note
La copia in memoria dei metadati può essere sottoposta a query utilizzando i metodi di una delle interfacce di "importazione" oppure essere aggiunta utilizzando i metodi di una delle interfacce di "generazione".
Se nel file di destinazione non sono contenuti metadati di Common Language Runtime, il metodo OpenScope avrà esito negativo.
In .NET Framework versioni 1.0 e 1.1, se un ambito viene aperto con dwOpenFlags impostato su ofRead, è utilizzabile per la condivisione. In altri termini, se chiamate successive a OpenScope passano il nome di un file aperto in precedenza, l'ambito esistente viene riutilizzato e non viene creato un nuovo set di strutture dati. Possono comunque verificarsi problemi a seguito della condivisione.
In .NET Framework versione 2.0 gli ambiti aperti con dwOpenFlags impostato su ofRead non sono più condivisi. Utilizzare il valore ofReadOnly per consentire la condivisione dell'ambito. Quando un ambito è condiviso, le query che utilizzano interfacce dei metadati di "lettura/scrittura" avranno esito negativo.
Requisiti
Piattaforme: vedere Requisiti di sistema di .NET Framework.
Intestazione: Cor.h
Libreria: utilizzata come risorsa in MsCorEE.dll
Versioni di .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0
Vedere anche
Riferimenti
Interfaccia IMetaDataDispenser
Interfaccia IMetaDataDispenserEx
Interfaccia IMetaDataAssemblyEmit