如果非管理员用户以提升的特权(uiAccess = true)打开,Electron会忽略loadURL()调用

时间:2018-11-30 16:18:26

标签: electron uac electron-packager uipi

我们有一个EXE打包的Electron应用程序,该应用程序需要在Windows下以提升的特权(uiAccess = true)运行,以防止用户在全屏模式下访问Windows。

在清单文件中设置uiAccess="true"会导致问题:无论是本地目录中的HTML文件还是本地运行的HTTP服务器的任何loadURL()调用都将被无提示忽略。

  • uiAccess设置为false的情况下,呼叫loadURL()对于任何用户都很好用
  • uiAccess设置为true时,调用loadURL()仅在EXE是由具有管理员特权的用户运行(即使没有以“管理员”身份运行)的情况下才有效。从具有“以管理员身份运行”选项的普通用户帐户启动。
  • 否则loadURL()不会做任何事情,不会引发任何错误

其他一切似乎都可以正常工作(创建窗口,捕获事件等)

UPD:我添加了日志记录,发现BrowserWindow的{​​{1}}在调用webContent之后不久发出了两个事件:

loadURL

这表明渲染器进程已崩溃-但是为什么呢?将"did-stop-loading" "crashed" ELECTRON_ENABLE_STACK_DUMPING环境变量设置为ELECTRON_ENABLE_LOGGING不会提供更多信息。

任何想法都是什么原因,如何解决?

0 个答案:

没有答案