IMetaDataDispenserEx::SetOption – metoda
Nastaví zadanou možnost na danou hodnotu pro aktuální obor metadat. Možnost určuje, jak se budou zpracovávat volání aktuálního oboru metadat.
Syntaxe
HRESULT SetOption (
[in] REFGUID optionId,
[in] const VARIANT *pValue
);
Parametry
optionId
[v] Ukazatel na identifikátor GUID, který určuje možnost, která má být nastavena.
pValue
[v] Hodnota, která se má použít k nastavení možnosti. Typ této hodnoty musí být variantou typu zadané možnosti.
Poznámky
Následující tabulka obsahuje seznam dostupných identifikátorů GUID, na které může parametr odkazovat, optionId
a odpovídající platné hodnoty parametru pValue
.
Identifikátor GUID | Description | pValue Parametr |
---|---|---|
MetaDataCheckDuplicatesFor | Určuje, u kterých položek se kontrolují duplicity. Při každém volání IMetaDataEmit metoda, která vytvoří novou položku, můžete požádat metodu o kontrolu, zda položka již existuje v aktuálním oboru. Můžete například zkontrolovat existenci mdMethodDef položek. V tomto případě při volání IMetaDataEmit::D efineMethod zkontroluje, zda metoda již neexistuje v aktuálním oboru. Tato kontrola používá klíč, který jednoznačně identifikuje danou metodu: nadřazený typ, název a podpis. |
Musí být variantou typu UI4 a musí obsahovat kombinaci hodnot výčtu CorCheckDuplicatesFor . |
MetaDataRefToDefCheck | Určuje, které odkazované položky se převedou na definice. Ve výchozím nastavení modul metadat optimalizuje kód převodem odkazované položky na její definici, pokud je odkazovaná položka skutečně definována v aktuálním oboru. | Musí být variantou typu UI4 a musí obsahovat kombinaci hodnot výčtu CorRefToDefCheck . |
MetaDataNotificationForTokenMovement | Řídí, ke kterým přemapování tokenů dochází během sloučení metadat, generují zpětná volání. Použití IMetaDataEmit::SetHandler metoda vytvořit IMapToken rozhraní. | Musí být variantou typu UI4 a musí obsahovat kombinaci hodnot výčtu CorNotificationForTokenMovement . |
MetaDataSetENC | Řídí chování funkce ENC (edit-and-continue). Najednou lze nastavit pouze jeden režim chování. | Musí být variantou typu UI4 a musí obsahovat hodnotu výčtu CorSetENC . Hodnota není bitová maska. |
MetaDataErrorIfEmitOutOfOrder | Řídí, které chyby generované mimo pořadí generují zpětná volání. Generování metadat mimo pořadí není fatální. Pokud však generujete metadata v pořadí, které je preferováno modulem metadat, metadata jsou kompaktnější, a proto je možné je vyhledávat efektivněji. IMetaDataEmit::SetHandler Pomocí metody vytvořte rozhraní IMetaDataError. |
Musí být variantou typu UI4 a musí obsahovat kombinaci hodnot výčtu CorErrorIfEmitOutOfOrder . |
MetaDataImportOption | Určuje, které druhy položek, které byly odstraněny během ENC, jsou načteny enumerátorem. | Musí být variantou typu UI4 a musí obsahovat kombinaci hodnot výčtu CorImportOptions . |
MetaDataThreadSafetyOptions | Řídí, jestli modul metadat získá zámky pro čtení a zápis, a tím zajišťuje bezpečnost vláken. Ve výchozím nastavení modul předpokládá, že volající přístup je jednovláknový, takže nejsou získány žádné zámky. Klienti zodpovídají za udržování správné synchronizace vláken při použití rozhraní API metadat. | Musí být variantou typu UI4 a musí obsahovat hodnotu výčtu CorThreadSafetyOptions . Hodnota není bitová maska. |
MetaDataGenerateTCEAdaptery | Určuje, jestli má dovozce knihovny typů generovat adaptéry TCE (Tightly Coupled Event) pro kontejnery spojovacích bodů MODELU COM. | Musí se jednat o variantu typu BOOL. Pokud pValue je nastavená na true , import knihovny typů vygeneruje adaptéry TCE. |
MetaDataTypeLibImportNamespace | Určuje jiný než výchozí obor názvů pro importovanou knihovnu typů. | Musí se jednat o hodnotu null nebo variantu typu BSTR. Pokud pValue je hodnota null, aktuální obor názvů je nastaven na hodnotu null; v opačném případě je aktuální obor názvů nastaven na řetězec, který je uložen v typu BSTR varianty. |
MetaDataLinkerOptions | Určuje, zda má linker generovat sestavení nebo soubor modulu rozhraní .NET Framework. | Musí být variantou typu UI4 a musí obsahovat kombinaci hodnot výčtu CorLinkerOptions . |
MetaDataRuntimeVersion | Určuje verzi modulu CLR (Common Language Runtime), pro který byla tato image sestavena. Verze je uložena jako řetězec, například "v1.0.3705". | Musí to být hodnota null, hodnota VT_EMPTY nebo varianta typu BSTR. Pokud pValue má hodnotu null, je verze modulu runtime nastavená na hodnotu null. Pokud pValue je VT_EMPTY, verze je nastavena na výchozí hodnotu, která je převzata z verze Mscorwks.dll, ve které je kód metadat spuštěn. V opačném případě se verze modulu runtime nastaví na řetězec, který se nachází v typu BSTR varianty. |
MetaDataMergerOptions | Určuje možnosti pro slučování metadat. | Musí být variantou typu UI4 a musí obsahovat kombinaci hodnot výčtu MergeFlags , který je popsán v souboru CorHdr.h. |
MetaDataPreserveLocalRefs | Zakáže optimalizaci místních odkazů na definice. | Musí obsahovat kombinaci hodnot výčtu CorLocalRefPreservation . |
Požadavky
Platforma: 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