You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过命令行获取Windows下.pyd导入缺失的DLL模块名

命令行排查Windows下.pyd缺失依赖DLL的方法

在Windows系统中导入.pyd文件时,若其依赖的DLL无法找到,会抛出如下错误:

Traceback (most recent call last):
...
ImportError: DLL load failed: The specified module could not be found.

通常这类问题会用Dependencies这类GUI工具排查,但CI场景下通过命令行操作更便捷,以下是几种可行的命令行排查方法:

方法1:使用Visual Studio自带的dumpbin工具

  • 确保dumpbin已加入系统环境变量,或直接使用其完整路径(例如Visual Studio 2019 BuildTools的路径:C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\bin\Hostx64\x64\dumpbin.exe)
  • 执行命令查看目标.pyd的所有依赖DLL:
    dumpbin /dependents your_module.pyd
    
  • 输出会列出所有依赖项,接着用where命令逐个验证DLL是否存在于系统路径中:
    where candidate_dll.dll
    
    无输出结果的即为缺失的DLL。

方法2:使用wldd(ldd的Windows移植版)

  • 安装wldd后,直接执行命令扫描.pyd的依赖:
    wldd your_module.pyd
    
  • 输出内容会明确标记出找不到的DLL(通常标注为not found)。

方法3:PowerShell脚本检查

  • 编写简单脚本遍历.pyd的依赖并验证存在性:
    $modulePath = "your_module.pyd"
    $dependencies = (Get-Item $modulePath).VersionInfo.FileDependencies
    foreach ($dep in $dependencies) {
        if (-not (Test-Path (Join-Path $env:Path $dep) -ErrorAction SilentlyContinue)) {
            Write-Host "缺失依赖:$dep"
        }
    }
    
  • 运行脚本后,会直接输出无法找到的依赖DLL名称。

内容的提问来源于stack exchange,提问作者Bruno Oliveira

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 22:35:18