Отладка программ в Windows
Степень завершённости урока: 35%
Статистика урока:
- Количество снимков: 3
- Время чтения: менее 5 минут
- Уровень сложности: сложный
Отладка это процесс устранения ошибок в коде или работе программ, соответственно отладчик это инструмент, позволяющий находить эти ошибки. В этом уроке идёт речь об отладке программ, созданных для архитектуры x86 (32-битные программы) и x64 (64-битные программы).
Для отладки 64-битных программ необходимо использовать 64-битный отладчик. В то же время 64-битный отладчик способен отлаживать 32-битные программы.
Для определения системного отладчика по умолчанию необходимо набрать в командной строке две команды.
Первая команда
reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug" /v Debugger
Вторая команда
reg query "HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\AeDebug" /v Debugger
Результат выполнения команд:

Процесс отладки зависит от того, что именно и как вы планируете запускать в отладчике
Если у вас имеется исходный код программы, тогда необходимо скомпилировать т.н. отладочную версию (debug-версия) программы, которая позволяет использовать дополнительную диагностику и включает в себя PDB (program database). PDB это файл с отладочной информацией (символами и типами), который создаётся при компиляции/линковке и нужен отладчику для сопоставления адреса в исполняемых файлах (с расширением EXE или DLL) с именами функций/переменных и строками исходника.
Отладчики в Windows могут работать в двух режимах
- Ring 0 (работа на уровне ядра операционной системы, полный доступ к физической памяти, остановка всех процессов, анализ драйверов, перехват системных вызовов.)
- Ring 3 (работа внутри пользовательского пространства, отладка только процессов того же уровня, ограничения: не видно ядро, драйверы, другие процессы)
Наиболее распространённые отладчики под Windows:
- Debugging Tools for Windows, входит в комплект Windows Driver Kit (WDK) и Software Development Kit (SDK)
- Microsoft Windows Debugger Classic (WinDbg Classic)
- Microsoft Windows Debugger (WinDbg)
- Microsoft Kernel Debugger (KD)
- NTKD
- Microsoft Console Debugger (CDB)
- Microsoft NT Symbolic Debugger (NTSD)
- Microsoft Visual Studio Debugger
- x64dbg
- Ollydbg



Предложить идею по улучшению урока в мессенджере Max или мессенджере Telegram
Страница обновлена 7 июня 2026 года.



