启动与系统组件

连接到特定基于英特尔的设备时,USB连接的音频或视频设备会发生故障。 - Windows Client

· 52CE 我爱测

本文提供了影响特定基于 Intel 的设备的问题的解决方法和修补程序。 附加到受影响设备的 USB 音频或视频设备可能无法正常工作。 这些 USB 设备包括相机、扬声器、麦克风和耳机。 症状 你遇到以下一个或多个症状: - 在音频流中,你可能会听到偶尔出现的问题或意外噪音,例如单击声或爆裂声。 - 在视频流中看到瞬间可见的瑕疵。 - USB 音频或视频设备停止工作。 受影响的设备 此问题会影响使用具有离散受信任平台模块(dTPM)芯片的 500、600、7

本文提供了影响特定基于 Intel 的设备的问题的解决方法和修补程序。 附加到受影响设备的 USB 音频或视频设备可能无法正常工作。 这些 USB 设备包括相机、扬声器、麦克风和耳机。

症状

你遇到以下一个或多个症状:

  • 在音频流中,你可能会听到偶尔出现的问题或意外噪音,例如单击声或爆裂声。
  • 在视频流中看到瞬间可见的瑕疵。
  • USB 音频或视频设备停止工作。

受影响的设备

此问题会影响使用具有离散受信任平台模块(dTPM)芯片的 500、600、700 系列平台控制器集线器的基于 Intel 的系统。 使用固件 TPM (fTPM) 技术的计算机不受此问题的影响。

解决方法

若要解决此问题,请执行以下步骤:

  1. 拔下设备,然后将其重新附加到计算机。
  2. 如果步骤 1 不起作用,请重新启动计算机。

原因

此问题是由于 Windows 与离散 TPM 进行通信时,内部硬件总线上出现延迟所引发的。 这些延迟反过来又会延迟与 USB 控制器的通信,并在 USB 总线上生成拆分事务错误。 因此,时间敏感的 USB 流量(如音频和视频流式处理)可能会遇到故障或错误。

决议

重要

此部分(或称方法或任务)介绍了修改注册表的步骤。 如果您错误地修改注册表,可能会出现严重问题。 因此,请确保仔细执行这些步骤。 出于防范目的,请在修改之前备份注册表,以便在出现问题时还原注册表。 有关如何备份和恢复注册表的更多信息,请参见如何在 Windows 中备份和恢复注册表。

Windows 11 版本 24H2 的 2025 年 10 月更新和 Windows 11 版本 23H2 的 2025 年 11 月更新引入了此硬件问题的修补程序。 若要使用此修补程序,请执行以下步骤:

  1. 在受影响的设备上,安装最新的更新。 如有必要,请重启设备。

  2. 验证设备是否使用 dTPM 而不是 fTPM。 若要查找此信息,请检查设备 BIOS 设置或联系设备制造商。

  3. 在本文的“ 详细信息 ”部分中运行诊断脚本。

    此脚本检查修补程序是否适用于设备。

  4. 创建以下注册表项:

    • 子项: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Tpm
    • 类型: REG_DWORD
    • 名称: TPMDriverReadAfterWriteCount
    • 值: 0x1 (1)

    例如,打开管理命令提示符窗口,然后运行以下命令:

    reg.exe ADD HKLM\SYSTEM\CurrentControlSet\Control\Tpm /v TPMDriverReadAfterWriteCount /t REG_DWORD /d 1
    

详细信息

可以使用以下 Windows PowerShell 脚本来确定电脑是否具有可能受到影响的控制器之一。 若要运行此脚本,请创建使用名称(如 Check-USBSplitTransactionVulnerability.ps1)的文件。 然后,将以下文本粘贴到文件中,并在 PowerShell 命令提示符下运行脚本。

注释

在 Device Manager 中,有问题的设备显示在 **“系统设备”**下。 它具有类似于“Intel(R) LPC 控制器/eSPI 控制器”的名称。

# USB Split Transaction Vulnerability Detection Script
# This script checks if a device is vulnerable to USB split transaction issues
# by examining the Windows registry for specific Intel PCH device IDs

# Define the vulnerable PCH device IDs from the CPP code
$VulnerablePchDeviceIds = @(
    "VEN_8086&DEV_4380", "VEN_8086&DEV_4381", "VEN_8086&DEV_4382", "VEN_8086&DEV_4383",
    "VEN_8086&DEV_4384", "VEN_8086&DEV_4385", "VEN_8086&DEV_4386", "VEN_8086&DEV_4387",
    "VEN_8086&DEV_4388", "VEN_8086&DEV_4389", "VEN_8086&DEV_438A", "VEN_8086&DEV_438B",
    "VEN_8086&DEV_438C", "VEN_8086&DEV_438D", "VEN_8086&DEV_438E", "VEN_8086&DEV_438F",
    "VEN_8086&DEV_4390", "VEN_8086&DEV_4391", "VEN_8086&DEV_4392", "VEN_8086&DEV_4393",
    "VEN_8086&DEV_4394", "VEN_8086&DEV_4395", "VEN_8086&DEV_4396", "VEN_8086&DEV_4397",
    "VEN_8086&DEV_4398", "VEN_8086&DEV_4399", "VEN_8086&DEV_439A", "VEN_8086&DEV_439B",
    "VEN_8086&DEV_439C", "VEN_8086&DEV_439D", "VEN_8086&DEV_439E", "VEN_8086&DEV_439F",
    "VEN_8086&DEV_7A80", "VEN_8086&DEV_7A81", "VEN_8086&DEV_7A82", "VEN_8086&DEV_7A83",
    "VEN_8086&DEV_7A84", "VEN_8086&DEV_7A85", "VEN_8086&DEV_7A86", "VEN_8086&DEV_7A87",
    "VEN_8086&DEV_7A88", "VEN_8086&DEV_7A89", "VEN_8086&DEV_7A8A", "VEN_8086&DEV_7A8B",
    "VEN_8086&DEV_7A8C", "VEN_8086&DEV_7A8D", "VEN_8086&DEV_7A8E", "VEN_8086&DEV_7A8F",
    "VEN_8086&DEV_7A90", "VEN_8086&DEV_7A91", "VEN_8086&DEV_7A92", "VEN_8086&DEV_7A93",
    "VEN_8086&DEV_7A94", "VEN_8086&DEV_7A95", "VEN_8086&DEV_7A96", "VEN_8086&DEV_7A97",
    "VEN_8086&DEV_7A98", "VEN_8086&DEV_7A99", "VEN_8086&DEV_7A9A", "VEN_8086&DEV_7A9B",
    "VEN_8086&DEV_7A9C", "VEN_8086&DEV_7A9D", "VEN_8086&DEV_7A9E", "VEN_8086&DEV_7A9F",
    "VEN_8086&DEV_7A00", "VEN_8086&DEV_7A01", "VEN_8086&DEV_7A03", "VEN_8086&DEV_7A03",
    "VEN_8086&DEV_7A04", "VEN_8086&DEV_7A05", "VEN_8086&DEV_7A06", "VEN_8086&DEV_7A07",
    "VEN_8086&DEV_7A08", "VEN_8086&DEV_7A09", "VEN_8086&DEV_7A0A", "VEN_8086&DEV_7A0B",
    "VEN_8086&DEV_7A0C", "VEN_8086&DEV_7A0D", "VEN_8086&DEV_7A0E", "VEN_8086&DEV_7A0F",
    "VEN_8086&DEV_7A10", "VEN_8086&DEV_7A11", "VEN_8086&DEV_7A12", "VEN_8086&DEV_7A13",
    "VEN_8086&DEV_7A14", "VEN_8086&DEV_7A15", "VEN_8086&DEV_7A16", "VEN_8086&DEV_7A17",
    "VEN_8086&DEV_7A18", "VEN_8086&DEV_7A19", "VEN_8086&DEV_7A1A", "VEN_8086&DEV_7A1B",
    "VEN_8086&DEV_7A1C", "VEN_8086&DEV_7A1D", "VEN_8086&DEV_7A1E", "VEN_8086&DEV_7A1F",
    "VEN_8086&DEV_A080", "VEN_8086&DEV_A081", "VEN_8086&DEV_A082", "VEN_8086&DEV_A083",
    "VEN_8086&DEV_A084", "VEN_8086&DEV_A085", "VEN_8086&DEV_A086", "VEN_8086&DEV_A087",
    "VEN_8086&DEV_A088", "VEN_8086&DEV_A089", "VEN_8086&DEV_A08A", "VEN_8086&DEV_A08B",
    "VEN_8086&DEV_A08C", "VEN_8086&DEV_A08D", "VEN_8086&DEV_A08E", "VEN_8086&DEV_A08F",
    "VEN_8086&DEV_A090", "VEN_8086&DEV_A091", "VEN_8086&DEV_A092", "VEN_8086&DEV_A093",
    "VEN_8086&DEV_A094", "VEN_8086&DEV_A095", "VEN_8086&DEV_A096", "VEN_8086&DEV_A097",
    "VEN_8086&DEV_A098", "VEN_8086&DEV_A099", "VEN_8086&DEV_A09A", "VEN_8086&DEV_A09B",
    "VEN_8086&DEV_A09C", "VEN_8086&DEV_A09D", "VEN_8086&DEV_A09E", "VEN_8086&DEV_A09F",
    "VEN_8086&DEV_5180", "VEN_8086&DEV_5181", "VEN_8086&DEV_5182", "VEN_8086&DEV_5183",
    "VEN_8086&DEV_5184", "VEN_8086&DEV_5185", "VEN_8086&DEV_5186", "VEN_8086&DEV_5187",
    "VEN_8086&DEV_5188", "VEN_8086&DEV_5189", "VEN_8086&DEV_518A", "VEN_8086&DEV_518B",
    "VEN_8086&DEV_518C", "VEN_8086&DEV_518D", "VEN_8086&DEV_518E", "VEN_8086&DEV_518F",
    "VEN_8086&DEV_5190", "VEN_8086&DEV_5191", "VEN_8086&DEV_5192", "VEN_8086&DEV_5193",
    "VEN_8086&DEV_5194", "VEN_8086&DEV_5195", "VEN_8086&DEV_5196", "VEN_8086&DEV_5197",
    "VEN_8086&DEV_5198", "VEN_8086&DEV_5199", "VEN_8086&DEV_519A", "VEN_8086&DEV_519B",
    "VEN_8086&DEV_519C", "VEN_8086&DEV_519D", "VEN_8086&DEV_519E", "VEN_8086&DEV_519F",
    "VEN_8086&DEV_5480", "VEN_8086&DEV_5481", "VEN_8086&DEV_5482", "VEN_8086&DEV_5483",
    "VEN_8086&DEV_5484", "VEN_8086&DEV_5485", "VEN_8086&DEV_5486", "VEN_8086&DEV_5487",
    "VEN_8086&DEV_5488", "VEN_8086&DEV_5489", "VEN_8086&DEV_548A", "VEN_8086&DEV_548B",
    "VEN_8086&DEV_548C", "VEN_8086&DEV_548D", "VEN_8086&DEV_548E", "VEN_8086&DEV_548F",
    "VEN_8086&DEV_5490", "VEN_8086&DEV_5491", "VEN_8086&DEV_5492", "VEN_8086&DEV_5493",
    "VEN_8086&DEV_5494", "VEN_8086&DEV_5495", "VEN_8086&DEV_5496", "VEN_8086&DEV_5497",
    "VEN_8086&DEV_5498", "VEN_8086&DEV_5499", "VEN_8086&DEV_549A", "VEN_8086&DEV_549B",
    "VEN_8086&DEV_549C", "VEN_8086&DEV_549D", "VEN_8086&DEV_549E", "VEN_8086&DEV_549F"
)

function Test-USBSplitTransactionVulnerability {
    <#
    .SYNOPSIS
    Checks if the current device is vulnerable to USB split transaction issues.
    
    .DESCRIPTION
    This function examines the Windows registry under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\PCI
    to detect if any of the known vulnerable Intel PCH device IDs are present on the system.
    
    .OUTPUTS
    Boolean indicating whether the device needs the registry workaround.
    #>
    
    try {
        # Define the registry path for PCI devices
        $RegistryPath = "HKLM:\SYSTEM\CurrentControlSet\Enum\PCI"
        
        # Check if the registry path exists
        if (-not (Test-Path $RegistryPath)) {
            Write-Warning "Registry path $RegistryPath not found. Unable to perform vulnerability check."
            return $false
        }
        
        # Get all first-level subkeys under the PCI registry path
        $PciDevices = Get-ChildItem -Path $RegistryPath -ErrorAction SilentlyContinue
        
        if (-not $PciDevices) {
            Write-Warning "No PCI devices found in registry."
            return $false
        }
        
        # Check each PCI device against the vulnerable device IDs
        foreach ($Device in $PciDevices) {
            $DeviceName = $Device.PSChildName
            
            # Check if the device name contains any of the vulnerable device IDs
            foreach ($VulnerableId in $VulnerablePchDeviceIds) {
                if ($DeviceName -like "*$VulnerableId*") {
                    Write-Verbose "Found vulnerable device: $DeviceName"
                    return $true
                }
            }
        }
        
        return $false
    }
    catch {
        Write-Error "An error occurred while checking for USB split transaction vulnerability: $_"
        return $false
    }
}

# Main execution
try {
    Write-Host "Checking for USB split transaction vulnerability..." -ForegroundColor Yellow
    
    # Run the vulnerability check
    $IsVulnerable = Test-USBSplitTransactionVulnerability
    
    # Output the result based on the evaluation
    if ($IsVulnerable) {
        Write-Host "This device is expected to need the registry workaround" -ForegroundColor Red
    } else {
        Write-Host "This device is not expected to need the registry workaround" -ForegroundColor Green
    }
}
catch {
    Write-Error "Script execution failed: $_"
    exit 1
}

资料来源与适用范围

资料来源
微软官方中文故障文档
适用范围
适用于设备。
内容语言
中文;命令、路径和错误标识保留技术原文
本地收录日期
2026-10-26
授权说明
CC BY 4.0

正文与所需资源由本站本地存储。查看来源及更新记录 ↗

请按适用版本和实际日志确认原因;本站没有对每一种系统或设备逐项执行文中的操作。