Dela via


IMetaDataDispenserEx::SetOption Method

Anger det angivna alternativet till ett angivet värde för det aktuella metadataomfånget. Alternativet styr hur anrop till det aktuella metadataomfånget hanteras.

Syntax

HRESULT SetOption (
    [in] REFGUID optionId,
    [in] const VARIANT *pValue
);

Parameters

optionId [i] En pekare till ett GUID som anger alternativet som ska anges.

pValue [i] Värdet som ska användas för att ange alternativet. Typen av det här värdet måste vara en variant av det angivna alternativets typ.

Remarks

I följande tabell visas de tillgängliga GUID:er som parametern optionId kan peka på och motsvarande giltiga värden för parametern pValue .

GUID Description pValue Parameter
MetaDataCheckDuplicatesFor Kontrollerar vilka objekt som kontrolleras för dubbletter. Varje gång du anropar en IMetaDataEmit-metod som skapar ett nytt objekt kan du be metoden att kontrollera om objektet redan finns i det aktuella omfånget. Du kan till exempel kontrollera om det finns mdMethodDef objekt. När du anropar IMetaDataEmit::D efineMethod kontrollerar du i det här fallet att metoden inte redan finns i det aktuella omfånget. Den här kontrollen använder nyckeln som unikt identifierar en viss metod: överordnad typ, namn och signatur. Måste vara en variant av typen UI4 och måste innehålla en kombination av värdena för CorCheckDuplicatesFor-uppräkningen .
MetaDataRefToDefCheck Kontroller som refererar till objekt konverteras till definitioner. Som standard optimerar metadatamotorn koden genom att konvertera ett refererat objekt till dess definition om det refererade objektet faktiskt definieras i det aktuella omfånget. Måste vara en variant av typen UI4 och måste innehålla en kombination av värdena för CorRefToDefCheck-uppräkningen .
MetaDataNotificationForTokenMovement Kontroller som tokenommappningar som inträffar under en metadatasammanslagning genererar återanrop. Använd metoden IMetaDataEmit::SetHandler för att upprätta ditt IMapToken-gränssnitt . Måste vara en variant av typen UI4 och måste innehålla en kombination av värdena för uppräkningen CorNotificationForTokenMovement .
MetaDataSetENC Styr beteendet för att redigera och fortsätta (ENC). Endast ett beteendeläge kan anges i taget. Måste vara en variant av typen UI4 och måste innehålla ett värde för CorSetENC-uppräkningen . Värdet är inte en bitmask.
MetaDataErrorIfEmitOutOfOrder Kontroller som genereras ut ur ordningen fel genererar återanrop. Det är inte allvarligt att generera metadata i fel ordning. Men om du genererar metadata i en ordning som gynnas av metadatamotorn är metadata mer kompakta och kan därför sökas mer effektivt. IMetaDataEmit::SetHandler Använd metoden för att upprätta ditt IMetaDataError-gränssnitt. Måste vara en variant av typen UI4 och måste innehålla en kombination av värdena för uppräkningen CorErrorIfEmitOutOfOrder .
MetaDataImportOption Styr vilka typer av objekt som togs bort under en ENC som hämtas av en uppräknare. Måste vara en variant av typen UI4 och måste innehålla en kombination av värdena för uppräkningen CorImportOptions Enumeration .
MetaDataThreadSafetyOptions Styr om metadatamotorn hämtar lås för läsare/skrivare, vilket säkerställer trådsäkerheten. Som standard förutsätter motorn att åtkomsten är enkeltrådad av anroparen, så inga lås hämtas. Klienter ansvarar för att upprätthålla korrekt trådsynkronisering när metadata-API:et används. Måste vara en variant av typen UI4 och måste innehålla ett värde för CorThreadSafetyOptions-uppräkningen . Värdet är inte en bitmask.
MetaDataGenerateTCEAdapters Styr om typbiblioteksimportören ska generera de tätt kopplade händelsekorten (TCE) för COM-anslutningspunktcontainrar. Måste vara en variant av typen BOOL. Om pValue är inställt på truegenererar typbiblioteksimportören TCE-korten.
MetaDataTypeLibImportNamespace Anger ett namnområde som inte är standard för det typbibliotek som importeras. Måste vara antingen ett null-värde eller en variant av typen BSTR. Om pValue är ett null-värde är det aktuella namnområdet inställt på null. Annars är det aktuella namnområdet inställt på strängen som finns i variantens BSTR-typ.
MetaDataLinkerOptions Styr om länkaren ska generera en sammansättning eller en .NET-modulfil. Måste vara en variant av typen UI4 och måste innehålla en kombination av värdena för CorLinkerOptions-uppräkningen .
MetaDataRuntimeVersion Anger vilken version av common language runtime som den här avbildningen skapades mot. Versionen lagras som en sträng, till exempel "v1.0.3705". Måste vara ett null-värde, ett VT_EMPTY värde eller en variant av typen BSTR. Om pValue är null är körningsversionen inställd på null. Om pValue är VT_EMPTY anges versionen till ett standardvärde, som hämtas från versionen av Mscorwks.dll där metadatakoden körs. Annars är körningsversionen inställd på strängen som finns i variantens BSTR-typ.
MetaDataMergerOptions Anger alternativ för sammanslagning av metadata. Måste vara en variant av typen UI4 och måste innehålla en kombination av värdena för MergeFlags uppräkningen, som beskrivs i filen CorHdr.h.
MetaDataPreserveLocalRefs Inaktiverar optimering av lokala referenser till definitioner. Måste innehålla en kombination av värdena för CorLocalRefPreservation-uppräkningen .

Requirements

Plattform: Se Operativsystem som stöds av .NET.

Header: Cor.h

Library: CorGuids.lib

See also