electron Win10电子错误:不支持直通,GL被禁用,ANGLE为

uurv41yg  于 2022-12-20  发布在  Electron
关注(0)|答案(1)|浏览(1005)

我有一个电子repo(https://github.com/MartinBarker/RenderTune),它曾经在windows 10上运行时很好,当运行命令提示符。几个月后,我回到一个新的新鲜windows 10机器与Nvidia GPU,和电子应用程序打印一个错误,在窗口启动时:

Uncaught TypeError: Cannot read properties of undefined (reading 'getCurrentWindow')

运行ffmpeg shell命令也会导致错误,并且在命令提示符终端输出以下消息:

[14880:1207/145651.085:ERROR:gpu_init.cc(457)] Passthrough is not supported, GL is disabled, ANGLE is

我检查了我的其他Windows笔记本电脑运行相同的完全相同的代码从主分支我的回购,它的工作完全正常时,运行在本地。
看起来这可能是最近的问题?我发现在各种论坛上都有讨论:https://bugs.launchpad.net/ubuntu/+source/glibc/+bug/1944468
https://www.reddit.com/r/electronjs/comments/qdauhu/passthrough_is_not_supported_gl_is_disabled_angle/
我试着将我的global electron npm软件包升级到更新的版本:电子@16.0.4,但错误仍然出现。

pjngdqdw

pjngdqdw1#

你可以尝试使用app.disableHardwareAcceleration()禁用硬件加速(参见文档)。我不认为这是一个修复,但它只是让消息消失了。

示例用法

main.js

import { app, BrowserWindow } from 'electron'
import isDev from 'electron-is-dev'

app.disableHardwareAcceleration()

let win = null

async function createWindow() {
  win = new BrowserWindow({
    title: 'My Window'
  })

  const winURL = isDev
    ? 'http://localhost:9080'
    : `file://${__dirname}/index.html`
  win.loadURL(url)

  win.on('ready-to-show', async () => {
    win.show()
    win.maximize()
  })
}

app.whenReady().then(createWindow)

app.on('window-all-closed', () => {
  win = null
  if (process.platform !== 'darwin') {
    app.quit()
  }
})

相关问题