IDebugControl3::SetEngineOptions 方法 (dbgeng.h)

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