Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Метод SetEngineOptions изменяет параметры подсистемы.
Синтаксис
HRESULT SetEngineOptions(
[in] ULONG Options
);
Параметры
[in] Options
Задает новые параметры подсистемы. параметры — это битовое значение; он заменит существующие параметры символов. Описание параметров обработчика см. в разделе "Примечания".
Возвращаемое значение
Этот метод также может возвращать значения ошибок. Дополнительные сведения см. в возвращаемых значений.
| Код возврата | Описание |
|---|---|
|
Метод выполнен успешно. |
Замечания
Этот метод задает параметры обработчика для параметров, указанных в параметрах. В отличие от AddEngineOptions, все параметры символов, которые не перечислены в битовом наборе параметров, будут удалены.
После изменения параметров обработчика подсистема отправляет уведомление каждому объекту обратного вызова событий клиента путем передачи флага DEBUG_CES_ENGINE_OPTIONS в метод IDebugEventCallbacks::ChangeEngineState.
Следующие глобальные параметры влияют на поведение обработчика отладчика:
| Постоянный | Описание |
|---|---|
| DEBUG_ENGOPT_IGNORE_DBGHELP_VERSION | Модуль отладчика создает предупреждение вместо ошибки, если версия БИБЛИОТЕКи DLL DbgHelp не соответствует версии обработчика отладчика. |
| 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. |
| 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 (Set Quiet Mode). |
| DEBUG_ENGOPT_DISABLE_MANAGED_SUPPORT | Отключает поддержку обработчика отладчика для управляемого кода. Если поддержка управляемого кода уже используется, этот параметр не действует. |
| 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 (include Dbgeng.h) |