共用方式為


(dbgeng.h) IDebugControl::SetEngineOptions 方法

SetEngineOptions 方法會變更引擎的選項。

語法

HRESULT SetEngineOptions(
  [in] ULONG Options
);

參數

[in] Options

指定引擎的新選項。 選項 是位集;它會取代現有的符號選項。 如需引擎選項的描述,請參閱。

傳回值

這個方法也可能傳回錯誤值。 如需詳細資訊,請參閱 傳回值

傳回碼 描述
S_OK
此方法成功。

備註

這個方法會將引擎的選項設定為 Options 中指定的選項。 不同於 AddEngineOptions,任何未列在 [選項 ] 位集中的符號選項都會遭到移除。

變更引擎選項之後,引擎會將DEBUG_CES_ENGINE_OPTIONS旗標傳遞至 IDebugEventCallbacks::ChangeEngineState 方法,以傳送通知給每個用戶端的事件回呼物件。

下列全域選項會影響 調試程式引擎的行為:

常數 描述
DEBUG_ENGOPT_IGNORE_DBGHELP_VERSION 如果 DbgHelp DLL 版本不符合調試程式引擎的版本,調試程式引擎會產生警告,而不是錯誤。
DEBUG_ENGOPT_IGNORE_EXTENSION_VERSIONS 停用擴充功能的版本檢查。 這會隱藏調試程式引擎對 CheckVersion 的呼叫。
DEBUG_ENGOPT_ALLOW_NETWORK_PATHS 網路共用可用於載入符號和延伸模組。 此選項可防止引擎在偵錯某些系統進程時不允許網路路徑,而且應該謹慎使用。

如果已設定DEBUG_ENGOPT_DISALLOW_NETWORK_PATHS,就無法設定此選項。

DEBUG_ENGOPT_DISALLOW_NETWORK_PATHS 網路共用無法用於載入符號和延伸模組。 引擎會在偵錯某些系統進程時嘗試設定此選項。

如果已設定DEBUG_ENGOPT_ALLOW_NETWORK_PATHS,就無法設定此選項。

DEBUG_ENGOPT_NETWORK_PATHS DEBUG_ENGOPT_ALLOW_NETWORK_PATHS和DEBUG_ENGOPT_DISALLOW_NETWORK_PATHS的位OR。
DEBUG_ENGOPT_IGNORE_LOADER_EXCEPTIONS 忽略載入器在特定版本的 Windows 中產生的預期第一個機率例外狀況。

例如,此選項可讓 Windows 3.51 二進位檔在偵錯 Windows 3.1 和 3.5 系統時執行。

DEBUG_ENGOPT_INITIAL_BREAK 中斷至目標初始事件的調試程式。
DEBUG_ENGOPT_INITIAL_MODULE_BREAK 當目標載入第一個模組時,中斷調試程式。
DEBUG_ENGOPT_FINAL_BREAK 中斷至目標最終事件的調試程式。 在即時使用者模式目標中,這是進程結束時。 它在核心模式中沒有任何作用。
DEBUG_ENGOPT_NO_EXECUTE_REPEAT 當指定空白命令時,調試程式引擎不會重複最後一個命令。
DEBUG_ENGOPT_FAIL_INCOMPLETE_INFORMATION 防止調試程式載入無法對應映像的模組。

調試程式會嘗試在偵錯不包含影像的最小值時載入影像。

DEBUG_ENGOPT_ALLOW_READ_ONLY_BREAKPOINTS 允許調試程式引擎操作目標上的頁面保護,以允許在記憶體的唯讀區段中設定軟體斷點。

設定軟體斷點時,引擎會以透明方式改變目標的記憶體,以插入中斷指令。

DEBUG_ENGOPT_SYNCHRONIZE_BREAKPOINTS 在即時使用者模式偵錯中,引擎會在插入和移除斷點時執行額外的工作,以確保目標中的所有 線程 隨時都有一致的斷點狀態。

當多個線程可以使用已設定斷點的程式代碼時,此選項很有用。 不過,這可能會導致死結的可能性。

DEBUG_ENGOPT_DISALLOW_SHELL_COMMANDS 不允許透過調試程式執行殼層命令。

設定此選項之後,就無法取消設定。

DEBUG_ENGOPT_KD_QUIET_MODE 開啟無訊息模式。 如需詳細資訊,請參閱 sq (設定無訊息模式)
DEBUG_ENGOPT_DISABLE_MANAGED_SUPPORT 停用Managed程式代碼的調試程式引擎支援。 如果 Managed 程式代碼的支援已在使用中,此選項不會有任何作用。
DEBUG_ENGOPT_DISABLE_MODULE_SYMBOL_LOAD 調試程式不會針對設定此旗標時載入的模組載入符號。
DEBUG_ENGOPT_DISABLE_EXECUTION_COMMANDS 防止任何會導致目標開始執行的命令。
DEBUG_ENGOPT_DISALLOW_IMAGE_FILE_MAPPING 不允許從磁碟對應影像檔。 例如,此選項在偵錯迷你傾印檔案期間不允許記憶體內容的影像對應。 此選項不會影響現有的對應;它只會影響後續嘗試對應圖像檔案。
DEBUG_ENGOPT_PREFER_DML 調試程式預設會執行 DML 增強版本的命令和作業。
DEBUG_ENGOPT_DISABLESQM 停用 (SQM) 資料的軟體品質計量上傳。

規格需求

需求
目標平台 桌面
標頭 dbgeng.h (包含 Dbgeng.h)

另請參閱

AddEngineOptions

GetEngineOptions

IDebugControl

IDebugControl2

IDebugControl3

RemoveEngineOptions