Включить отладку виндовс 8

Обновлено: 06.07.2024

В пакет средств отладки для Windows входят современные отладочные инструменты, с помощью которых можно исследовать внутреннее устройство Windows. В самую последнюю версию в качестве составной части включен набор для разработки программного обеспечения — Windows Software Development Kit (SDK).

Средства из этого набора могут использоваться для отладки как процессов пользовательского режима, так и процессов ядра.

ПРИМЕЧАНИЕ. Средства отладки Debugging Tools for Windows довольно часто обновляются и выпускаются независимо от версий операционной системы Windows, поэтому почаще проверяйте наличие новых версий.

СОВЕТ. Отладка в пользовательском режиме.

Средства отладки могут также использоваться для подключения к процессу пользовательского режима и для изучения и (или) изменения состояния памяти процесса. При подключении к процессу есть два варианта:

  • Навязчивый (Invasive). Если при подключении к запущенному процессу не даны специальные указания, для подключения отладчика к отлаживаемому коду используется Windows-функция DebugActiveProcess. Тем самым создаются условия для исследования и (или) изменения памяти процесса, установки контрольных точек и выполнения других отладочных функций. Windows позволяет остановить отладку без прерывания целевого процесса, если отладчик отключается без прерывания своей работы.
  • Ненавязчивый (Noninvasive). При таком варианте отладчик просто открывает процесс с помощью функции OpenProcess. Этот процесс не подключается к другому процессу в качестве отладчика. Это позволяет исследовать и (или) изменять память целевого процесса, но вы не можете устанавливать контрольные точки.

Со средствами отладки можно также открывать файлы дампа процесса пользовательского режима.

Для отладки ядра могут использоваться два отладчика: работающий в окне командной строки (Kd.exe) и имеющий графический пользовательский интерфейс, GUI (Windbg.exe). Оба отладчика предоставляют одинаковый набор команд, поэтому выбор всецело зависит от личных предпочтений. Эти средства позволяют выполнять три типа отладки ядра:

  • Открыть аварийный дамп-файл, созданный в результате аварийного завершения работы системы.
  • Подключиться к действующей, работающей системе и исследовать состояние системы (или установить контрольные точки, если ведется отладка кода драйвера устройства). Для этой операции нужны два компьютера — целевой и ведущий. Целевой компьютер содержит отлаживаемую систему, а ведущий — систему, на которой запущен отладчик. Целевая система может быть подключена к ведущей через нуль-модемный кабель, кабель IEEE 1394 или отладочный кабель USB 2.0. Целевая система должна быть загружена в режиме отладки (либо путем нажатия F8 в процессе загрузки и выбора пункта Режим отладки (Debugging Mode), либо путем настройки системы на запуск в режиме отладки, используя Bcdedit или Msconfig.exe). Можно также подключиться через поименованный канал, применяемый при отладке через виртуальную машину (созданную такими средствами, как Hyper-V, Virtual PC или VMWare), путем выставления гостевой операционной системой последовательного порта в качестве поименованного канального устройства.
  • Системы Windows позволяют также подключиться к локальной системе и исследовать ее состояние. Это называется «локальной отладкой ядра». Чтобы приступить к локальной отладке ядра с помощью отладчика WinDbg, откройте меню File (Файл), выберите пункт Kernel Debug (Отладка ядра), щелкните на вкладке Local (Локальная), а затем щелкните на кнопке OK. Целевая система должна быть загружена в отладочном режиме. Пример появляющегося при этом экрана показан на рис. 1.6. В режиме локальной отладки ядра не работают некоторые команды отладчика ядра (например, команда .dump, предназначенная для создания дампа памяти, хотя такой дамп можно создать с помощью рассматриваемого далее средства LiveKd).

локальная-отладка-ядра

Локальная отладка ядра

Для отображения содержимого внутренней структуры данных, включающей сведения о потоках, процессах, пакетах запросов на ввод-вывод данных и информации об управлении памятью, после подключения к режиму отладки ядра можно воспользоваться одной из множества команд расширения отладчика (команд, начинающихся с символа «!»).

Эксперимент: Отображение информации о типах для структур ядра.

Чтобы вывести список структур ядра, чей тип информации включен в символы ядра, наберите в отладчике ядра команду dt nt!_*. Частичный образец вывода имеет следующий вид:

Командой dt можно также воспользоваться для поиска определенных структур, используя заложенную в эту команду возможность применения символов-заместителей. Например, если ведется поиск имени структуры для объекта interrupt, нужно набрать команду dt nt!_*interrupt*:

lkd> dt nt!_*interrupt*

Затем, как показано в следующем примере, команду dt можно использовать для форматирования определенной структуры:

lkd> dt nt!_kinterrupt

+0x000 Type : Int2B

+0x002 Size : Int2B

+0x008 InterruptListEntry : _LIST_ENTRY

+0x018 ServiceRoutine : Ptr64 unsigned char

+0x020 MessageServiceRoutine : Ptr64 unsigned char

+0x028 MessageIndex : Uint4B

+0x030 ServiceContext : Ptr64 Void

+0x038 SpinLock : Uint8B

+0x040 TickCount : Uint4B

+0x048 ActualLock : Ptr64 Uint8B

+0x050 DispatchAddress : Ptr64 void

+0x058 Vector : Uint4B

+0x05c Irql : UChar

+0x05d SynchronizeIrql : UChar

+0x05e FloatingSave : UChar

+0x05f Connected : UChar

+0x060 Number : Uint4B

+0x064 ShareVector : UChar

+0x065 Pad : [3] Char

+0x068 Mode : _KINTERRUPT_MODE

+0x06c Polarity : _KINTERRUPT_POLARITY

+0x070 ServiceCount : Uint4B

+0x074 DispatchCount : Uint4B

+0x078 Rsvd1 : Uint8B

+0x080 TrapFrame : Ptr64 _KTRAP_FRAME

+0x088 Reserved : Ptr64 Void

+0x090 DispatchCode : [4] Uint4B

Следует заметить, что при выполнении команды dt подструктуры (структуры внутри структур) по умолчанию не показываются. Для выполнения рекурсии подструктур нужно воспользоваться ключом –r. Например, воспользоваться этим ключом для вывода объекта прерывания ядра с показом формата структуры _LIST_ENTRY, хранящейся в поле InterruptListEntry:

lkd> dt nt!_kinterrupt -r

+0x000 Type : Int2B

+0x002 Size : Int2B

+0x008 InterruptListEntry : _LIST_ENTRY

+0x000 Flink : Ptr64 _LIST_ENTRY

+0x000 Flink : Ptr64 _LIST_ENTRY

+0x008 Blink : Ptr64 _LIST_ENTRY

+0x008 Blink : Ptr64 _LIST_ENTRY

+0x000 Flink : Ptr64 _LIST_ENTRY

+0x008 Blink : Ptr64 _LIST_ENTRY

В файле справки Debugging Tools for Windows также объясняется, как настраиваются и используются отладчики ядра. Дополнительные подробности использования отладчиков ядра, предназначенные непосредственно для создателей драйверов устройств, могут быть найдены в документации по набору Windows Driver Kit.

Отладчик Visual Studio — очень эффективное средство. Прежде чем приступать к его использованию, следует ознакомиться с базовыми терминами, такими как отладчик, отладка и режим отладки. Когда позднее мы будем вести речь о поиске и устранении ошибок, мы будем иметь в виду то же самое.

Отладчик и отладка

Термин отладка может иметь разные значения, но в первую очередь он означает устранение ошибок в коде. Делается это по-разному. Например, отладка может выполняться путем проверки кода на наличие опечаток или с помощью анализатора кода. Код можно отлаживать с помощью профилировщика производительности. Кроме того, отладка может производиться посредством отладчика.

Отладчик — это узкоспециализированное средство разработки, которое присоединяется к работающему приложению и позволяет проверять код. В документации по отладке для Visual Studio именно это обычно подразумевается под отладкой.

Режим отладки и выполнение приложения

Начать отладку

При первом запуске приложения в Visual Studio его можно запустить, нажав кнопку с зеленой стрелкой на панели инструментов (или клавишу F5). По умолчанию в раскрывающемся списке слева отображается элемент Отладка. Если вы не имеете опыта работы с Visual Studio, может показаться, что отладка приложения — это практически то же самое, что его запуск. На самом деле эти задачи хоть и связаны, но коренным образом различаются.

Выбор отладочной сборки

Значение Отладка соответствует конфигурации отладки. Когда вы запускаете приложение (нажимая зеленую стрелку или клавишу F5) в конфигурации отладки, оно запускается в режиме отладки. Это означает, что приложение запускается с присоединенным отладчиком. В результате вы получаете полный набор функций отладки, которые можно использовать для поиска ошибок в приложении.

Если у вас открыт проект, выберите в раскрывающемся списке Отладка элемент Выпуск.

Выбор сборки выпуска

При выборе этого параметра конфигурация отладки для проекта меняется на конфигурацию выпуска. Проекты Visual Studio имеют отдельные конфигурации выпуска и отладки для вашей программы. Производится построение отладочной версии для отладки и версии выпуска для окончательного выпуска программы. Сборка выпуска оптимизирована для обеспечения максимальной производительности, а отладочная сборка лучше подходит для отладки.

Когда следует использовать отладчик

Отладчик — важнейший инструмент для поиска и устранения ошибок в приложениях. Однако большое значение имеет контекст. Важно использовать все средства, имеющиеся в вашем распоряжении, чтобы быстро устранять ошибки. Зачастую лучшим "средством" являются правильные методики написания кода. Зная, когда лучше использовать отладчик, а когда — другие средства, вы также сможете более эффективно использовать отладчик.

Следующие шаги

Windows 8 безопасный режим

Способов безопасного режима в Windows 8 несколько.

Переводим курсор в нижний правый угол экрана, затем поднимаем курсор и выбираем параметры.

Image 002

Теперь нажимаем на выключение.

Image 003

Теперь зажимаем SHIFT и нажимаем выключение и выбираем перезагрузка.

Image 004

Спустя несколько секунд появляется меню выбор действия.

Продолжить. Выход и использование Windows 8.1
Диагностика. Восстановление компьютера, возврат компьютера в исходное состояние или использование дополнительных средств.
Выключить компьютер.

Выбираем диагностика.

Image 005

Восстановить. Если ваш компьютер работает неправильно, вы можете его восстановить без потери файлов.
Вернуть в исходное состояние. Ваши файлы будут удалены.
Дополнительные параметры.

Выбираем дополнительные параметры.

Image 006

Восстановление системы. Восстановление Windows с помощью точки восстановления.
Восстановление образа системы. Восстановление Windows с помощью файла образа системы.
Восстановление при загрузке. Устранение неполадок, мешающих загрузке Windows.
Командная строка. Командную строку можно применять для расширенного устранения неполадок.
Параметры загрузки. Настройка параметров загрузки Windows.

Выбираем параметры загрузки.

Image 007

Image 008

Появляется меню из девяти пунктов загрузки.
Параметры загрузки. Для выбора из следующих параметров нажмите соответствующую клавишу: используйте клавиши с цифрами или F1-F9.

1) Включить отладку
Windows загружается в режиме расширенной диагностики, предназначенном для системных администраторов.

2) Включить ведение журнала загрузки
Windows загружается и созданёт файл ntbtlog.txt, в который записываются все драйверы, установленные во время запуска.

3) Включить видеорежим с низким разрешением
Windows загружается используя видеодрайвер с низкими значениями разрешения и частоты обновления. Этот режим можно использовать для сброса параметров экрана, если вы установили разрешение, которыое не поддерживает ваш монитор.

4) Включить безопасный режим
Windows запускается с минимальным набором драйверов и служб.

5) Включить безопасный режим с загрузкой сетевых драйверов
Windows загружается в безопасном режиме c загрузкой сетевых драйверов и служб, необходимых для выхода в интернет.

6) Включить безопасный режим с поддержкой командной строки
Windows запускается в безопасном режиме с окном командной строки вместо обычного интерфейса Windows.

7) Отключить обязательную проверку подписи драйверов
Позволяет производить установку драйверов, содержащих неправильные подписи.

8) Отключить ранний запуск антивредоносной защиты
Отключение раннего запуска антивредоносного драйвера, что позволяет установить драйверы, которые могут содержать вредоносные программы.

9) Отключить автоматический перезапуск после сбоя
Windows не будет автоматически перезагружаться в случае возникновения фатальной ошибки в работе Windows.

Советую выбирать пятый пункт.

Image 011

Готово. Windows запустилась в безопасном режиме и мы можем выйти в интернет, чтобы поискать решения проблемы или просто так.

Перезагрузившись Windows запуститься в обычном режиме.

Image 010

Нажимаем сочетание клавиш Win + R, чтобы запустить утилиту выполнить.

Image 012

Теперь пишем msconfig и нажимаем ОК или Enter.

Image 013

Открывается конфигурация системы. Переходим во вкладку загрузка.

Image 014

Теперь ставим галочку на безопасный режим.

Image 015

Image 016

Настройка системы. Чтобы изменения вступили в силу, может потребоваться перезагрузка компьютера. Перед выполнением перезагрузки сохраните все открытые файлы и закройте все программы.

Выбираем перезагрузка.

Image 017

Теперь перезагружаемся. Готово, теперь система будет загружаться всегда в безопасном режиме.

Image 009

Чтобы загружаться в обычном режиме нужно вновь войти в конфигурацию системы.

Покажу как зайти в неё другим способом. Переводим курсор в нижнюю правую или верхнюю правую часть, затем опускаем (если вы перевели курсор в верхню часть) или поднимаем (если вы перевели курсор в нижнюю часть) и выбираем поиск.

Image 023

В поиске пишем msconfig и выбираем его ниже, чтобы открыть конфигурацию системы.

Image 024

Открывается конфигурация системы. Переходим во вкладку загрузка.

Image 014

Теперь снимаем галочку с безопасный режим, чтобы система перезагружалась в обычном режиме.

Image 016

Image 015

Выбираем перезагрузка.

Image 017

Теперь Windows будет всегда загружаться в обычном режиме.

Компьютеры на базе Windows 10 поддерживают несколько способов запуска. Среднестатистические пользователи не придают этой опции значения, включая ПК в обычном режиме, когда доступны все основные службы. Но параллельно с этим существует режим отладки на операционной системе Windows 10, который может пригодиться опытным юзерам, желающим провести диагностику своего устройства.

Что такое режим отладки в Windows 10

Для определения того, что собой представляет данный режим, необходимо определить значение слова «отладка» («Debugging»). В сфере компьютерной техники ею называют процесс, позволяющий найти и устранить ошибки, связанные с работой ПК.

screenshot_1

Режим отладки позволяет решить массу проблем – от небольших сбоев Windows 10 до полного отказа от работы. Впрочем, к нему следует обращаться только опытным пользователям, которые способны найти объяснение каждому своему шагу. В остальных случаях, когда речь идет о новичке, исключать возможность применения режима тоже нельзя. Но в такой ситуации важно изучить инструкцию по активации Debugging и способах его применения на практике.

Как его включить?

Чтобы приступить к поиску и устранению неисправностей, необходимо перейти в режим Debugging. Для этого понадобится открыть меню с разными вариантами загрузки по следующему алгоритму:

screenshot_2

  • Перейдите в раздел «Обновление и безопасность», а затем – «Восстановление».

screenshot_3

  • Под заголовком «Особые варианты загрузки» нажмите на кнопку «Перезагрузить сейчас».

screenshot_4

На заметку. Также вы можете открыть дополнительное меню, зажав клавишу «Shift» при выборе варианта «Перезагрузка» в «Пуске».

В случае правильного выполнения указанных действий компьютер перезагрузится, а при следующем включении вы увидите синий экран с выбором действий. Можно нажать на кнопку «Продолжить», чтобы запустить ПК в стандартном режиме, но нас интересует Debugging, поэтому действуйте иначе:

  • Перейдите в раздел «Поиск и устранение неисправностей».

screenshot_5

  • Выберите «Дополнительные параметры», а затем – «Параметры загрузки».

screenshot_6

  • Найдите в списке пункт, отвечающий за отладку, и нажмите на клавишу, которая отвечает за ее активацию (как правило, это клавиша «F1»).

screenshot_7

После этого устройство включится вместе с отладочным окном, которое поможет выполнить различные манипуляции для диагностики и решения проблем. Также в рассматриваемом режиме любые ошибки сохраняются в виде отдельных файлов «логов», аналогичным образом помогающих установить причины неполадок и своевременно устранить их.

Возможные проблемы

  • Щелкните ПКМ по иконке «Пуск».
  • Откройте Командную строку с правами Администратора.
  • Введите запрос «bcdedit /set advancedoptions true».

screenshot_8

Следом произойдет перезапуск, и расширенные параметры откроются в принудительном порядке. Еще одна проблема связана с выходом из отладки. Чтобы компьютер включался в стандартной конфигурации, необходимо обработать запрос «deletevalue». Впечатать «bcdedit /deletevalue advancedoptions» в вышеупомянутой Командной строке или на появившемся синем экране выбрать опцию «Продолжить».

Читайте также: