windows - 如何在启动时关闭 Windows 内核调试?

标签 windows debugging kernel windbg boot

我有一台 Vista 32 位机器,我想在其上启用本地内核调试。 在 WinDbg 中,我选择了文件/内核调试并选择了本地选项卡并单击确定。 我收到以下消息。

系统不支持本地内核调试。 ... Windows Vista 中默认禁用本地内核调试,您必须运行“bcdedit -debug on”并重新启动才能启用它。

我天真地按照说明打开提升的命令提示符并键入“bcdedit -debug on”并重新启动。

但是,在重新启动时,系统在到达登录屏幕时挂起 - 或者就在我输入用户名和密码后挂起。

我怀疑正在发生的事情是因为启用了调试器,在内核调试器进程中触发了用户模式异常,它正在等待我从附加的调试器输入一些输入??

我希望在实际目标机器上进行调试。

我的问题是每次我启动时 - 无论我选择 F8 启动选项 - 它总是挂起或到达那么远然后重新启动 - 然后挂起。

以安全模式启动 - 接近登录屏幕,然后重新启动。 同样适用于命令行和网络启动选项。 最后一次正确的配置 - 也挂起。

有什么方法可以在 Windows 加载之前更改引导选项,以便我可以关闭内核调试。我只有一个启动配置,事后看来,这是我的问题 - 我应该为我的调试启动选项创建第一个启动配置的副本。

不幸的是,系统没有串行端口,所以我无法尝试通过它进行调试。

我现在能想到的唯一选择是尝试通过 USB 端口连接来自不同机器的调试器。但是,我是否不需要将目标 PC 配置为接受 USB 端口上的调试器,或者如果我获得正确的调试 USB 电缆,这是否可以正常工作?

最佳答案

弄清楚如何让机器再次运行。

在重新启动期间按 F8 键会出现修复选项。 选择修复并提供许多其他选项,包括恢复到以前的还原点以及打开命令提示符。

我试过以下...

打开命令提示符并键入“bcdedit -debug off”,该命令被接受但似乎没有帮助。 然后我尝试恢复到几天前的恢复点。我再次挂起重新加载。

原因,....这些都没有真正关闭启动配置的调试选项。

我需要做的是:在“修复”菜单中 - 打开命令提示符。 然后键入 bcdedit/enum 以列出引导配置。 然后调用

bcdedit /set {default} debug off

我想我最初尝试调用 bcdedit -debug off 是在引导管理器配置上将其关闭(它已经是),因为我没有指定特定的配置名称。

关于windows - 如何在启动时关闭 Windows 内核调试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5182380/

相关文章:

silverlight - 如何针对Google Chrome调试Silverlight

Android:在调试器断点时,由于 ANR,dalvik 杀死应用程序

Android内核编译报错gcc6 linaro 6

java - 如何在 Windows 上远程启动 Tomcat

c++ - 如何在Windows上安装带多媒体的Qt

windows - 如何理解 tcp windows server 连接问题?

windows - 对从 DLL 或 SO 导出的符号的写入权限

java - JBoss 4.2 - 同一 JBoss 上的多个应用程序处于 Debug模式?

c - 在无限循环中显示相同的字符

c - OpenCL 是否支持随机访问的全局队列缓冲区?