BCDEdit /dbgsettings

/dbgsettings 选项设置或显示计算机的当前全局调试器设置。 若要启用或禁用内核调试器,请使用 BCDEdit /debug 选项。

注意

设置 BCDEdit 选项之前,可能需要禁用或暂停计算机上的 BitLocker 和安全启动。

bcdedit /dbgsettings NET HOSTIP:ip PORT:port [KEY:key] [nodhcp] [newkey] [/start startpolicy] [/noumex] 

bcdedit /dbgsettings LOCAL [/start startpolicy] [/noumex] 

bcdedit /dbgsettings SERIAL [DEBUGPORT:port] [BAUDRATE:baud] [/start startpolicy] [/noumex] 

bcdedit /dbgsettings USB [TARGETNAME:targetname] [/start startpolicy] [/noumex] 

bcdedit /dbgsettings 1394 [CHANNEL:channel] [/start startpolicy] [/noumex] NOTE: The 1394 TRANSPORT IS DEPRECATED

参数

NET

指定目标计算机和主机将使用以太网网络连接进行调试。 使用此选项时,还必须包含 HOSTIPPORT 参数。 目标计算机必须具有 Windows 调试工具支持的网络适配器。

HOSTIP:ip
对于网络调试,指定主机调试器的 IP 地址。

KEY:key
对于网络调试,指定用于加密连接的密钥。 [0-9] 和 [a-z] 仅允许。 如果已指定 newkey 参数,请不要指定此参数。

PORT:port
对于网络调试,指定要在主机调试器上与之通信的端口。 必须是 49152 或以上。

newkey
对于网络调试,指定应为连接生成新的加密密钥。 如果指定了 KEY 参数,请不要指定此参数。

nodhcp

设置 nodhcp 可防止使用 DHCP 获取目标 IP 地址。 很少需要此选项,因为即使是小型路由器也提供对 DHCP 的支持。 仅当知道网络上没有 DHCP 服务器时,才应使用 nodhcp 选项。 在大多数情况下,如果未设置此选项并启用 DHCP,则 KDNET 传输效果最佳。

busparams=Bus.Device.Function 指定目标控制器。 Bus 指定总线号,Device 指定设备号,Function 指定功能号 。

若要指定总线参数,请打开设备管理器,并找到要用于调试的网络适配器。 打开网络适配器的属性页,记下总线编号、设备编号和函数编号。 这些值显示在“常规”选项卡上的“位置”下的设备管理器中。在提升的命令提示符窗口中,输入以下命令,其中 b、d 和 f 是十进制格式的总线、设备和函数编号:

bcdedit /set "{dbgsettings}" busparams b.d.f

如果要手动配置调试器连接,则必须指定总线参数。 有关详细信息,请参阅 手动设置 KDNET 网络内核调试通过 USB 3.0 电缆手动设置 Kernel-Mode 调试

示例

以下命令将目标计算机配置为使用以太网连接进行调试,并指定主计算机的 IP 地址。 命令还指定主计算机可用于连接到目标计算机的端口号。

bcdedit /dbgsettings net hostip:10.125.5.10 port:50000

以下命令将全局调试器设置设置为使用 IPv6 与调试器主机在端口 50000 上通信的 IPv6 进行网络调试:2001:48:d8:2f:5e:c0:42:28:4f5b:

bcdedit /dbgsettings NET HOSTIPV6:2001:48:d8:2f:5e:c0:42:28:4f5b PORT:50000

重要

手动设置网络调试是一个复杂且容易出错的过程。 若要自动设置网络调试,请参阅 自动设置 KDNET 网络内核调试强烈建议所有调试器用户使用 KDNET 实用工具。

有关手动设置的详细信息,请参阅 通过网络电缆手动设置 Kernel-Mode 调试

LOCAL

LOCAL 选项将全局调试选项设置为本地调试。 这是单台计算机上的内核模式调试。 换句话说,调试器在正在调试的同一台计算机上运行。 通过本地调试,可以检查状态,但不能中断导致 OS 停止运行的内核模式进程。

示例

以下命令将全局调试器设置设置为本地调试。

bcdedit /dbgsettings LOCAL

LOCAL 选项在 Windows 8.0 和 Windows Server 2012 及更高版本中可用。

有关手动设置本地内核模式调试的信息,请参阅 手动设置单台计算机的本地内核调试

SERIAL

指定目标计算机和主机将使用串行连接进行调试。 使用此选项时,应指定 DEBUGPORTBAUDRATE 参数。

BAUDRATE:baud
指定要使用的波特率。 此参数是可选的。 波特的有效值为 9600、19200、38400、57600 和 115200。 默认波特率为 115200 bps。

DEBUGPORT:port
指定要用作调试端口的串行端口。 这是一个可选设置。 默认端口为 1 (COM 1) 。

示例

以下命令将目标计算机配置为使用串行连接进行调试。 命令还指定调试连接将使用 COM1 和波特率为 115,200。

bcdedit /dbgsettings serial debugport:1 baudrate:115200

有关详细信息,请参阅 手动通过串行电缆设置 Kernel-Mode 调试

USB

指定目标计算机和主机将使用 USB 2.0 或 USB 3.0 连接进行调试。 使用此选项时,还必须包含 TARGETNAME 参数。

TARGETNAME:targetname
指定要用于目标名称的字符串值。 请注意,TargetName 不一定是目标计算机的官方名称;只要满足以下限制,它就可以是创建的任何字符串:

  • 字符串不得在 TargetName 中的任何位置包含“debug”,大小写或大写的任意组合。 例如,如果在 targetname 中的任何位置使用“DeBuG”或“DEBUG”,则调试将无法正常工作。
  • 字符串中唯一的字符是连字符 ( ) 、下划线 (_) 、数字 0 到 9,以及字母 A 到 Z (大写或小写) 。
  • 字符串的最大长度为 24 个字符。

示例

以下命令将目标计算机配置为使用 USB 连接进行调试。 命令还指定一个目标名称,主计算机可以使用该名称连接到目标计算机。

bcdedit /dbgsettings usb targetname:myTarget

有关详细信息,请参阅:

1394

重要

1394 传输可用于 Windows 10 版本 1607 及更低版本。 它在 Windows 的更高版本中不可用。 应将项目转换为其他传输,例如使用以太网的 KDNET。 有关该传输的详细信息,请参阅自动设置 KDNET 网络内核调试

指定目标计算机和主机将使用 IEEE 1394 (FireWire) 连接进行调试。 使用此选项时,也可以包含 CHANNEL 参数。

CHANNEL:channel
(仅在连接类型为 1394 时使用。) 指定要使用的 1394 通道。 通道的值必须是介于 0 和 62(含)之间的小数整数,并且必须与主计算机使用的通道号匹配。 此参数中指定的通道不依赖于适配器上选择的物理 1394 端口。 通道的默认值为 0。

有关详细信息,请参阅 通过 1394 电缆手动设置 Kernel-Mode 调试

常规调试器设置

/startstartpolicy
此选项指定调试器启动策略。 下表显示了 startpolicy 的选项。

选项 描述
ACTIVE 指定内核调试器处于活动状态。
AUTOENABLE 指定在发生异常或其他关键事件时自动启用内核调试器。 在此之前,调试器处于活动状态,但已禁用。
DISABLE 指定在键入 kdbgctrl 以清除 enable 块时启用内核调试器。 在此之前,调试器处于活动状态,但已禁用。

如果未指定启动策略,则 ACTIVE 为默认值。

/noumex
指定内核调试器忽略用户模式异常。 默认情况下,内核调试器在某些用户模式异常(如STATUS_BREAKPOINT和STATUS_SINGLE_STEP)时中断。 仅当进程没有附加用户模式调试器时, /noumex 参数才有效。

注释

/dbgsettings 选项配置调试设置,但不启用调试。 必须使用 /debug 选项为特定启动项启用调试。 如果没有为特定启动项指定调试设置,则使用默认调试设置。

下表显示了 dbgsettings 的默认值。

dbgsetting 参数 默认值
debugtype Local
debugstart 活动
noumex

请参阅

有关 Windows 调试工具的信息,请参阅 Windows 调试

有关设置和配置内核模式调试会话的信息,请参阅 手动设置 Kernel-Mode 调试自动设置 KDNET 网络内核调试