Metodo IMetaDataDispenserEx::SetOption (rometadataapi.h)
Imposta l'opzione specificata su un valore specificato per l'ambito dei metadati corrente. L'opzione controlla la modalità di gestione delle chiamate all'ambito dei metadati corrente.
Sintassi
HRESULT SetOption(
[in] REFGUID optionId,
[in] const VARIANT *pValue
);
Parametri
[in] optionId
Puntatore a un GUID che specifica l'opzione da impostare.
[in] pValue
Valore da utilizzare per impostare l'opzione . Il tipo di questo valore deve essere una variante del tipo di opzione specificato.
Valore restituito
Se questo metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
Nella tabella seguente sono elencati i GUID disponibili a cui può puntare il parametro optionId e i valori validi corrispondenti per il parametro pValue .
GUID | Descrizione | pValue Parametro |
---|---|---|
MetaDataCheckDuplicatesFor | Controlla quali elementi vengono controllati per i duplicati. | Deve essere una variante di tipo UI4 e deve contenere una combinazione dei valori dell'enumerazione CorCheckDuplicatesFor . |
MetaDataRefToDefCheck | Controlli a cui si fa riferimento gli elementi vengono convertiti in definizioni. Per impostazione predefinita, il motore di metadati ottimizza il codice convertendo un elemento a cui si fa riferimento nella relativa definizione se l'elemento a cui si fa riferimento è effettivamente definito nell'ambito corrente. | Deve essere una variante di tipo UI4 e deve contenere una combinazione dei valori dell'enumerazione CorRefToDefCheck . |
MetaDataNotificationForTokenMovement | Controlla il mapping dei token che si verificano durante un'unione di metadati genera callback. | Deve essere una variante di tipo UI4 e deve contenere una combinazione dei valori dell'enumerazione CorNotificationForTokenMovement . |
MetaDataSetENC | Controlla il comportamento di modifica e continuazione (ENC). È possibile impostare una sola modalità di comportamento alla volta. | Deve essere una variante di tipo UI4 e deve contenere un valore dell'enumerazione CorSetENC . Il valore non è una maschera di bit. |
MetaDataErrorIfEmitOutOfOrder | I controlli che generano errori di callback generati non in ordine. L'emissione di metadati non in ordine non è irreversibile; Tuttavia, se si generano metadati in un ordine preferito dal motore di metadati, i metadati sono più compatta e pertanto possono essere ricercati in modo più efficiente. | Deve essere una variante di tipo UI4 e deve contenere una combinazione dei valori dell'enumerazione CorErrorIfEmitOutOfOrder . |
MetaDataImportOption | Controlla quali tipi di elementi eliminati durante un ENC vengono recuperati da un enumeratore. | Deve essere una variante di tipo UI4 e deve contenere una combinazione dei valori dell'enumerazione CorImportOptions . |
MetaDataThreadSafetyOptions | Controlla se il motore dei metadati ottiene blocchi reader/writer, garantendo in tal modo la thread safety. Per impostazione predefinita, il motore presuppone che l'accesso sia a thread singolo dal chiamante, quindi non viene ottenuto alcun blocco. I client sono responsabili della gestione corretta della sincronizzazione dei thread quando si usa l'API dei metadati. | Deve essere una variante di tipo UI4 e deve contenere un valore dell'enumerazione CorThreadSafetyOptions . Il valore non è una maschera di bit. |
MetaDataGenerateTCEAdapters | Controlla se l'utilità di importazione della libreria dei tipi deve generare gli adattatori TCE (Tightly Coupled Event) per i contenitori dei punti di connessione COM. | Deve essere una variante di tipo BOOL. Se pValue è impostato su true, l'utilità di importazione della libreria dei tipi genera gli adattatori TCE. |
MetaDataTypeLibImportNamespace | Specifica uno spazio dei nomi non predefinito per la libreria dei tipi da importare. | Deve essere un valore Null o una variante di tipo BSTR. Se pValue è un valore Null, lo spazio dei nomi corrente viene impostato su Null; in caso contrario, lo spazio dei nomi corrente viene impostato sulla stringa contenuta nel tipo BSTR della variante. |
MetaDataLinkerOptions | Controlla se il linker deve generare un assembly o un file di modulo .NET Framework. | Deve essere una variante di tipo UI4 e deve contenere una combinazione dei valori dell'enumerazione CorLinkerOptions . |
MetaDataRuntimeVersion | Specifica la versione di Common Language Runtime in base alla quale è stata compilata l'immagine. La versione viene archiviata come stringa, ad esempio "v1.0.3705". | Deve essere un valore Null, un valore VT_EMPTY o una variante di tipo BSTR. Se pValue è Null, la versione di runtime è impostata su Null. Se pValue è VT_EMPTY, la versione viene impostata su un valore predefinito, che viene disegnato dalla versione di Mscorwks.dll in cui è in esecuzione il codice dei metadati. In caso contrario, la versione di runtime è impostata sulla stringa contenuta nel tipo BSTR della variante. |
MetaDataMergerOptions | Specifica le opzioni per l'unione dei metadati. | Deve essere una variante di tipo UI4 e deve contenere una combinazione dei valori dell'enumerazione MergeFlags, descritta nel file CorHdr.h. |
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Windows |
Intestazione | rometadataapi.h |