83f420984
V2EX  ›  问与答

Electron 安装路径含空格导致二进制文件执行错误?

  •  
  •   83f420984 · Oct 16, 2024 · 1310 views
    This topic created in 605 days ago, the information mentioned may be changed or developed.

    程序安装到 C:\Program Files 中后,在 Electron 环境中运行 FFmpeg 时会报找不到 FFmpeg 。

    如果改成 C:\ProgramFiles 后就没任何问题。

    获取 FFmpeg 路径代码如下:

      if (app.isPackaged) {
        return path.join(process.resourcesPath, 'binaries', 'ffmpeg.exe');
      }
    

    用 AI 问了一圈,没找到解决办法

    4 replies    2024-10-17 09:25:26 +08:00
    ysc3839
        1
    ysc3839  
       Oct 16, 2024   ❤️ 1
    问题不在这,在执行那里
    Atma
        2
    Atma  
       Oct 17, 2024 via Android   ❤️ 1
    执行 cmd 命令那边要把 ffmpegpath 引号括起来
    jim9606
        3
    jim9606  
       Oct 17, 2024   ❤️ 1
    可能需要在执行的时候用引号把路径包起来。
    据我所知,python 的 subproccess.run 虽然支持传递字符串数组,但只在 posix 类系统下才会原样传递给 exec 系统调用,而在 windows 下就是拼接字符串,因此需要加引号及进行转义。估计 electron 也有这个问题。
    83f420984
        4
    83f420984  
    OP
       Oct 17, 2024
    @Atma
    @jim9606
    确实是这个问题,谢谢 🙏
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2976 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 212ms · UTC 02:43 · PVG 10:43 · LAX 19:43 · JFK 22:43
    ♥ Do have faith in what you're doing.