IMetaDataDispenserEx::SetOption 方法 (rometadataapi.h)
將指定的選項設定為目前中繼資料範圍的指定值。 選項可控制對目前中繼資料範圍之呼叫的處理方式。
語法
HRESULT SetOption(
[in] REFGUID optionId,
[in] const VARIANT *pValue
);
參數
[in] optionId
GUID 的指標,指定要設定的選項。
[in] pValue
要用來設定選項的值。 這個值的類型必須是所指定選項的類型變體。
傳回值
如果此方法成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。
備註
下表列出 optionId 參數可以指向的可用 GUID,以及 pValue 參數的對應有效值。
GUID | 描述 | pValue 參數 |
---|---|---|
MetaDataCheckDuplicatesFor | 控制要檢查哪些項目是否有重複。 | 必須是 UI4 型別的變體,而且必須包含 CorCheckDuplicatesFor 列舉值的組合。 |
MetaDataRefToDefCheck | 控制要將哪些參考的項目轉換成定義。 根據預設,中繼資料引擎會藉由將參考的項目轉換成其定義,來將程式碼最佳化 (如果參考的項目實際上已定義於目前範圍內)。 | 必須是 UI4 型別的變體,而且必須包含 CorRefToDefCheck 列舉值的組合。 |
MetaDataNotificationForTokenMovement | 控制哪個在中繼資料合併期間發生的語彙基元重新對應會產生回呼。 | 必須是 UI4 型別的變體,而且必須包含 CorNotificationForTokenMovement 列舉值的組合。 |
MetaDataSetENC | 控制編輯後繼續 (ENC) 的行為。 一次只能設定一種行為模式。 | 必須是 UI4 型別的變體,而且必須包含 CorSetENC 列舉的值。 此值不是位元遮罩。 |
MetaDataErrorIfEmitOutOfOrder | 控制哪個未依序發出錯誤會產生回呼。 未依序發出中繼資料並非嚴重錯誤;不過,如果您依中繼資料引擎偏好的順序來發出中繼資料,中繼資料會更精簡,而讓您能夠更有效率地搜尋。 | 必須是 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 Framework 模組檔案。 | 必須是 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 檔案中所述。 |
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | rometadataapi.h |