Отладка локального ядра в Windows 7 - WinDBG и LiveKD выдают ошибки

4936
ARV

Эта ошибка на Windows 7 Home Premium на моем ноутбуке (x64). Я пытаюсь узнать больше о Windows Internals, используя локальную отладку ядра в WinDBG, а затем LiveKD. У меня установлены средства отладки Windows для Windows 7.

Я продолжаю получать следующие ошибки - что может быть не так (на скриншоте я использую kd вместо windbg для захвата сообщения об ошибке; оболочка запускается от имени администратора)? Я попытался запустить LiveKD, потому что WinDBG не работал. Я просто хотел посмотреть на внутренние структуры данных.

Кстати, WinDBG попросил меня запустить «bcdedit -debug on и перезагрузиться, чтобы включить его» - я запустил его и перезагрузил компьютер. В последовательности загрузки изменений не было - машина загружалась прямо в Windows 7, как обычно.

C:\Windows\system32>kd -kl  Microsoft (R) Windows Debugger Version 6.12.0002.633 X86 Copyright (c) Microsoft Corporation. All rights reserved.  The system does not support local kernel debugging. Local kernel debugging requires Windows XP, Administrative privileges. Local kernel debugging dose not support WOW64, please run local kernel debugging from 64-bit native debugger. Only a single local kernel debugging session can run at a time. Local kernel debugging is disabled by default since Windows Vista, you must run "bcdedit -debug on" and reboot to enable it. Debuggee initialization failed, HRESULT 0x80004001 "Not implemented"  C:\Windows\system32>livekd  LiveKd v5.1 - Execute kd/windbg on a live system Sysinternals - www.sysinternals.com Copyright (C) 2000-2012 Mark Russinovich and Ken Johnson  LiveKd requires Dbghelp.dll. Download the Debugging Tools package from www.microsoft.com/whdc/ddk/debugging.   Exiting LiveKd.   C:\Windows\system32>where dbghelp.dll C:\Windows\System32\dbghelp.dll C:\Program Files (x86)\Debugging Tools for Windows (x86)\dbghelp.dll  C:\Windows\system32> 
1
Похоже, вы используете инструменты отладки x86 в своей системе x64 для одного. См. [Выбор 32-разрядных или 64-разрядных средств отладки] (http://msdn.microsoft.com/en-us/library/windows/hardware/ff539099 (v = vs.85) .aspx). Ƭᴇcʜιᴇ007 10 лет назад 2
Спасибо, я думаю, что это была проблема. Однако моя установка инструментов отладки была перепутана с различными вещами, которые я пробовал, и мне пришлось загрузить ~ 600 МБ ISO-файл * дважды *, так как первая загрузка была повреждена. ARV 10 лет назад 0

2 ответа на вопрос

1
ARV

I managed to fix it by re-installing debugging tools for windows. To do this, I first uninstalled it, and downloaded the x64 Windows 7 SDK ISO from this link (http://www.microsoft.com/en-us/download/details.aspx?id=8442). The file name is GRMSDKX_EN_DVD.iso. Be sure to check the SHA1 checksum of the downloaded ISO image - in my case, my first download was incomplete and the installation didn't go smoothly. I chose to install only the WinDBG tools the second time and now I can debug the kernel locally. After I downloaded the latest version of SysInternals suite, I am also able to run LiveKD without any issues.

1
Alan Duan

I run into the same situation once. Yet figure out what happened to me was that I forgot to run windbg as administrator. Basically to enable local kernel debugging on Windows 7, only few steps are needed.

  1. start cmd as Administrator, run 'bcdedit -debug on'
  2. reboot
  3. (optional) install symbols
  4. install windbg (x64 if you are using windows 7 64bit, otherwise install x86.)
  5. run windbg as Administrator
  6. set symbol path in windbg menu
  7. enjoy it, there should be no more errors.