IDebugControl2::SetEngineOptions 方法 (dbgeng.h)
SetEngineOptions 方法會變更引擎的選項。
語法
HRESULT SetEngineOptions(
[in] ULONG Options
);
參數
[in] Options
指定引擎的新選項。 選項 是位集合;它會取代現有的符號選項。 如需引擎選項的描述,請參閱。
傳回值
這個方法也可能傳回錯誤值。 如需詳細資訊,請參閱 傳回值 。
傳回碼 | 描述 |
---|---|
|
此方法成功。 |
備註
這個方法會將引擎的選項設定為 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) |