IMetaDataDispenserEx::SetOption 方法
更新:2007 年 11 月
針對目前的中繼資料範圍,將指定的選項設為指定值。此選項會控制目前中繼資料範圍之呼叫的處理方式。
HRESULT SetOption (
[in] REFGUID optionId,
[in] const VARIANT *pValue
);
參數
optionId
[in] GUID 的指標,指定要設定的選項。pValue
[in] 用來設定選項的值。此值的型別必須是指定之選項型別的變數。
備註
下表列出 optionId 參數可指向的可用 GUID,以及 pValue 參數對應的有效值。
GUID |
選項 |
pValue 參數 |
---|---|---|
MetaDataCheckDuplicatesFor |
重複的檢查。控制檢查哪些項目是重複的,以及不檢查哪些項目。也就是說,每次您呼叫會建立新項目的 IMetaDataEmit 方法時,可以要求此方法檢查目前範圍中是否已存在此項目。例如,您可以要求檢查 mdMethodDef 項目,在此案例中,當您呼叫 IMetaDataEmit::DefineMethod 時,它便檢查到此方法並未存在於目前範圍中。這項檢查使用唯一識別指定之方法的索引鍵:父型別、名稱和簽章。 |
必須是型別 UI4 的變數,而且包含 CorCheckDuplicatesFor 列舉型別值的組合。 |
MetaDataRefToDefCheck |
參考至定義最佳化。控制哪些參考的項目已轉換為定義。根據預設,如果參考的項目實際上是在目前範圍中定義的,則中繼資料引擎會將參考的項目轉換為其定義,來最佳化程式碼。 |
必須是型別 UI4 的變數,而且包含 CorRefToDefCheck 列舉型別值的組合。 |
MetaDataNotificationForTokenMovement |
對語彙基元移動的告知。控制中繼資料合併期間所發生的哪些語彙基元重新對應會產生回呼。使用 IMetaDataEmit::SetHandler 方法建立您的 IMapToken 介面。 |
必須是型別 UI4 的變數,而且包含 CorNotificationForTokenMovement 列舉型別值的組合。 |
MetaDataSetENC |
ENC 模式。控制編輯後繼續 (ENC) 的行為。每次只能設定一個行為模式。 |
必須是型別 UI4 的變數,而且包含 CorSetENC 列舉型別的值。此值不是位元遮罩。 |
MetaDataErrorIfEmitOutOfOrder |
不按順序發出。控制哪些「不按順序發出的」錯誤會產生回呼。不按順序發出中繼資料不是嚴重錯誤,不過,如果按照中繼資料引擎偏好的順序發出中繼資料,則中繼資料會比較精簡,因此可以更有效率地進行搜尋。使用 IMetaDataEmit::SetHandler 方法建立您的 IMetaDataError 介面。 |
必須是型別 UI4 的變數,而且包含 CorErrorIfEmitOutOfOrder 列舉型別值的組合。 |
MetaDataImportOption |
匯入選項。控制 ENC 期間所刪除的哪些項目類型會由列舉值擷取。 |
必須是型別 UI4, 的變數,而且包含 CorImportOptions 列舉值的組合。 |
MetaDataThreadSafetyOptions |
執行緒安全的選項。控制中繼資料引擎是否會取得讀取器/寫入器鎖定,因此確保執行緒安全。根據預設,引擎會假設呼叫端的存取是單一執行緒,所以不會取得鎖定。用戶端在使用中繼資料 API 時,應負責維護適當的執行緒同步處理。 |
必須是型別 UI4 的變數,而且包含 CorThreadSafetyOptions 列舉型別的值。此值不是位元遮罩。 |
MetaDataGenerateTCEAdapters |
產生 TCE 配接器 (Adapter)。控制型別程式庫匯入工具是否應產生 COM 連接點 (Connection Point) 容器的緊密耦合事件 (Tightly Coupled Event,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 型別中所保留的字串。 |
需求
**平台:**請參閱 .NET Framework 系統需求。
**標頭:**Cor.h
**程式庫:**當做 MsCorEE.dll 中的資源使用
**.NET Framework 版本:**3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0、1.1、1.0