共用方式為


IMetaDataDispenserEx::SetOption Method

將指定的選項設定為目前元數據範圍的指定值。 選項會控制如何處理對目前元數據範圍的呼叫。

Syntax

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

Parameters

optionId [in]GUID 的指標,指定要設定的選項。

pValue [in]要用來設定選項的值。 這個值的型別必須是指定之選項類型的變體。

Remarks

下表列出參數可指向的可用 GUID optionId ,以及參數的 pValue 對應有效值。

GUID Description pValue 參數
MetaDataCheckDuplicatesFor 控制要檢查哪些專案是否有重複專案。 每次呼叫建立新專案的 IMetaDataEmit 方法時,您可以要求 方法檢查專案是否已存在於目前範圍中。 例如,您可以檢查專案是否存在 mdMethodDef ;在此情況下,當您呼叫 IMetaDataEmit::D efineMethod 時,它會檢查方法是否還不存在於目前範圍中。 這項檢查會使用可唯一識別指定方法的索引鍵:父類型、名稱和簽章。 必須是UI4類型的變體,而且必須包含 CorCheckDuplicatesFor 列舉值的組合。
MetaDataRefToDefCheck 控制哪些參考項目會轉換成定義。 根據預設,如果參考的專案實際定義於目前範圍中,元數據引擎會將參考的項目轉換成其定義,以優化程序代碼。 必須是UI4類型的變體,而且必須包含 CorRefToDefCheck 列舉值的組合。
MetaDataNotificationForTokenMovement 控制元數據合併期間發生的令牌重新對應會產生回呼。 使用 IMetaDataEmit::SetHandler 方法來建立 IMapToken 介面。 必須是UI4類型的變體,而且必須包含 CorNotificationForTokenMovement 列舉值的組合。
MetaDataSetENC 控制編輯後繼續的行為(ENC)。 一次只能設定一種行為模式。 必須是UI4類型的變體,而且必須包含 CorSetENC 列舉的值。 值不是位掩碼。
MetaDataErrorIfEmitOutOfOrder 控制發出順序錯亂的錯誤會產生回呼。 依序發出元數據不是致命的;不過,如果您依元數據引擎偏好的順序發出元數據,元數據會比較精簡,因此可以更有效率地搜尋。 IMetaDataEmit::SetHandler使用方法來建立 IMetaDataError 介面。 必須是UI4類型的變體,而且必須包含 CorErrorIfEmitOutOfOrder 列舉值的組合。
MetaDataImportOption 控制列舉值擷取 ENC 期間刪除的項目種類。 必須是UI4類型的變體,而且必須包含 CorImportOptions 列舉 列舉值的組合。
MetaDataThreadSafetyOptions 控制元數據引擎是否取得讀取器/寫入器鎖定,從而確保線程安全性。 根據預設,引擎會假設存取是由呼叫端單個線程,因此不會取得鎖定。 用戶端負責在使用元數據 API 時維護適當的線程同步處理。 必須是UI4類型的變體,且必須包含 CorThreadSafetyOptions 列舉的值。 值不是位掩碼。
MetaDataGenerateTCEAdapters 控制類型連結庫匯入工具是否應該為 COM 連接點容器產生緊密結合的事件 (TCE) 配接器。 必須是 BOOL 類型的變體。 如果 pValue 設定為 true,則類型連結庫匯入工具會產生 TCE 配接器。
MetaDataTypeLibImportNamespace 為要匯入的類型庫指定非預設命名空間。 必須是 Null 值或 BSTR 類型的變體。 如果 pValue 為 Null 值,則目前的命名空間會設定為 null;否則,目前的命名空間會設定為變數 BSTR 類型中保留的字串。
MetaDataLinkerOptions 控制連結器是否應該產生元件或 .NET 模組檔案。 必須是UI4類型的變體,而且必須包含 CorLinkerOptions 列舉值的組合。
MetaDataRuntimeVersion 指定建置此映像的 Common Language Runtime 版本。 版本會儲存為字串,例如 「v1.0.3705」。。 必須是 Null 值、VT_EMPTY值或 BSTR 類型的變體。 如果 pValue 為 null,運行時間版本會設定為 null。 如果 pValue 為 VT_EMPTY,則會將版本設定為預設值,其取自元數據程式代碼執行所在的 Mscorwks.dll 版本。 否則,運行時間版本會設定為變數 BSTR 類型中保留的字串。
MetaDataMergerOptions 指定合併元數據的選項。 必須是UI4類型的變體,而且必須包含 列舉值 MergeFlags 的組合,如 CorHdr.h 檔案中所述。
MetaDataPreserveLocalRefs 停用將本機參考優化為定義。 必須包含 CorLocalRefPreservation 列舉值的組合。

Requirements

平臺: 請參閱 .NET 支援的作系統

Header: Cor.h

Library: CorGuids.lib

See also