我正在Windows上测试。
该应用程序在“就绪”上设置一个托盘菜单,并带有“关于”标签。单击时,将显示一个浏览器窗口:
var aboutBox = new BrowserWindow({
width: 460, height: 176, useContentSize: true,
icon: iconImg,
maximizable: false, fullscreenable: false, resizable: false, minimi
使用npm start运行应用程序时,一切正常。但是,在使用electron packager构建我的应用程序并打开.exe文件后,会发生以下情况:
“找不到有效的应用程序”,完整说明如下
我的packager.json文件是:
{
"name": "electron-roll-tool",
"version": "1.0.0",
"description": "A minimal Electron application",
"main": "src/main.js",
在我的electron forge应用程序中,运行在Windows 10上,ejs模板不会呈现,尽管没有可见的错误。
我可以使用创建的应用程序重现问题
electron-forge init ejs-test
我使用的是electron forge 5.2.2和ejs electron 2.03
这是我的index.js文件:
import { app, BrowserWindow } from 'electron'
import * as ejse from 'ejs-electron'
我试图在中创建一个按钮,打开一个对话框来打开一个文件。(在本例中,只需打印其名称)
这是我的index.html中的按钮:
<div class="alse-element">
<input id="select-song" type="button" value="select song" onclick="select_song()"/>
</div>
这是我的renderer.js:
const { dialog } = require(
我有一个普通的Electron应用程序,带有加载文件的浏览器窗口:
win = new BrowserWindow(...);
win.loadURL(url.format({
pathname: path.resolve(__dirname, 'main.html'),
protocol: "file:",
slashes: true
}));
我正在使用electron build打包应用程序。大多数情况下,这很好用。但有时,当我为Mac和Windows构建它时,B
标签: Electron
electron-buildermac-app-storecode-signing-certificateappstore-sandbox
将应用程序沙盒化是绝对要求吗?您是否可以在没有此权限的情况下将应用上载到App Store
我的应用程序在没有“com.apple.security.app sandbox”授权的情况下运行得非常好,但添加它会破坏一切。应用程序立即崩溃,我得到了“EXC_BAD_ACCESS(代码签名无效)”错误
如果必须的话,有没有关于如何使“沙盒”与electron一起工作的好教程?我试着用谷歌搜索它,但似乎有很多不同的指南和建议。我不知道该听哪个
我正在使用electron builder 21.2.0(
我想在我的电子应用程序中使用Puppeter inside worker线程。构建包时,我使用外部文件将工作代码复制到Resources/bin。但不幸的是,它在运行后抛出异常:“找不到模组木偶演员”。我已经尝试过的:
正常导入木偶师:
在app.asar.unpack中导入木偶演员:
在app.asar中导入木偶演员:
以下是重现我案例的回购协议:
您能帮我吗?您需要将所有与puppetter相关的DEP复制到asar。解包:
您需要将所有与puppetter相关的DEP复制到as
我在主进程中有一个“选择当前项目”的侦听器。从渲染器进程触发时,它可以正常工作,但如何从菜单中发出相同的事件
菜单是在默认的createWindow()中创建的
我的事件处理程序
我不确定我是否理解您所描述的问题,但我所做的是:
函数showProjectPicker存在于main.js中,由如下所示的菜单操作调用。如果我想从渲染器进程调用它,我会通过IPC发送一条消息
{
label: 'File',
submenu: [
{ label: 'Open Project...
标签: Electron
v8electron-builderkeyboard-layout
自从升级到electron 10.1.2以来,我对electron builder有一个问题。我的构建现在在重建键盘布局时失败。重建仅在Windows而不是Mac上失败。我不知道从哪里开始这个问题,所以我在这里问:)
我的设置:
角度:9.0.7
电子:10.1.2
电子生成器:22.8.x
当我将electron从9.0.0更新到10.1.2时,问题就开始了。其他一切都没有改变
问题:
使用命令调用electron-builder.cmd--x64-p always-w重建键盘布局时被
我是新来的electronjs我想获得任何应用程序的路径,例如名为iMacros的用户安装应用程序我需要找到该软件的安装位置
我选中了app.getPath(),它对我不起作用,因为它只支持几个目录,例如下载、用户数据等
请让我知道如何在electronJs中找到任何软件或应用程序安装目录对不起,您无法知道任何软件或应用程序安装目录,您应该从应用程序的文档、搜索软件文件。。。获取安装目录所需的任何操作
由于并非所有应用程序的安装目录都是固定的,因此它们可以是多个文件夹,与操作系统不同,某些应用程
我正在使用browserify将我的应用程序的所有.js文件合并到一个dist/main.js。我的package.json看起来像:
"main": "./dist/main.js",
"scripts": {
"start": "electron ./dist/main.js",
},
"bin": {
"electron": "./node_modules/.bin/electron"
}
我可以使用npm run start正确运行我的应用程序。
但是,如果在main.js
使用electron edge js调用c#dll方法,但不从node.exe.config文件读取配置数据。我们还需要为electron保留app.config吗?我通过将node.exe.config重命名为myapp.exe.config使其正常工作
有人知道如何用Electronj创建一个单独的加载屏幕,就像Slack用他们的一样吗
我不明白。你想要网页的HTML和CSS吗?或者你需要如何用电子来表达?因为在第二种情况下,您只需在应用程序开始时创建一个浏览器窗口,其中包含加载程序的HTML代码。当你知道你的应用程序已经准备好了,关闭浏览器窗口或加载新的URL…第二个,这是有意义的。我不知道这是electron内部的一个选项,还是一个单独的浏览器窗口。通过一个单独的浏览器窗口,我可以从主窗口(已关闭)继续加载资源?您可以根据需要进行管理:)您
我对Electron是新手,但对NW.JS有经验。在NW.JS中,我将我的项目捆绑为:
|> Project Root
|-----> Linux NW.JS Directory
|-----> Windows NW.JS Directory
|-----> Application Directory
启动应用程序时,我有一个程序检测操作系统,然后按此方式启动(psuedo):
应用程序是巨大的。。。所以我只想要一个应用程序目录。我不希望每个操作系统都有一个。从逻辑上讲
我有一个渲染器文件,它的唯一目的是打开一个对话框从中选择文件。我试过多次重写这个,每次都会出现不同的错误。我做错了什么
确切代码:
const { ipcRenderer, shell, remote } = require('electron')
const dialog = remote.dialog;
function openFileBrowser() {
dialog.showOpenDialog(remote.getCurrentWindow(), {
p
我有一个很奇怪的问题。我在学习electron,在我尝试创建一个对话框来显示项目中的另一个站点之前,一切都很好
在main.js中,我的代码与electron first应用程序教程中的代码完全相同:
const {app, BrowserWindow} = require('electron')
let win;
function createWindow() {
win = new BrowserWindow({
width: 800,
heigh
标签: Electron
electron-builderelectron-packager
我已经使用electron制作桌面应用程序有一段时间了,但仍然不知道如何为所有可用的linux发行版打包它。对于所有的linux发行版,我不知道。我制作Linux Electron项目的方式就是
npm install --save-dev electron-builder
将其添加到my package.json的根目录中
"build": {
"appId": "com.myname.appname",
&qu
我正在创建一个使用mysql的应用程序。我想从main.js文件调用一个函数。这个main.js文件是主应用程序文件,就像文档一样。我看到了一个如何调用此函数的示例:
const { remote } = require('electron');
const main = remote.require('./main');
main.saveUser();
但它给出了以下错误:
Uncaught TypeError: Cannot read property 'require' of unde
我正在通过electron-builder构建并尝试打包。Linux上的electron builder生成的deb安装成功地在系统路径上注册了应用程序,我可以像vscode的codeCLI一样通过CLI打开应用程序
但是,当我在Windows上尝试此操作时,应用程序路径未在路径上注册,因此无法通过CLI调用我的应用程序
因此,我想知道是否有任何方法可以使用electron builder将electron app exe文件注册到windows路径,以便通过CLI调用我的应用程序
下面是我的p
只是想知道电子应用程序是否需要路由器
由于应用程序的URL没有在Electron应用程序上显示/公开,因此我认为不需要路由器。特别是因为您无法访问“重新加载”按钮
你对这件事有什么想法?好吧,你可以重新载入、回顾和前进,甚至是关于电子的干净历史。路由也许可以帮助你像网页一样组织你的工作
var electron = require('electron');
var window = electron.remote.getCurrentWindow();
window.reload();
wind
我是Electron Framework的新手,我正在试用一个应用程序,在这个应用程序中,我需要在我的应用程序中单击菜单项启动一个特定的软件(例如firefox)
现在我正在尝试在Windows平台(使用Windows 7)上构建该应用程序
用例
-带有静态内容的主页
-应用程序菜单位于顶部,菜单项为“启动我的软件”
-单击此菜单项后,我想启动安装在我的系统上的软件(我知道exe文件的路径)
创建和启动项目的步骤
npminit(输入项目的详细信息并创建package.json)
npm安装el
我正在使用findOne调用一个简单查询,到目前为止,users.db中的数据是:
{"id":40, "is_admin":1,"name":"John Smith"},
{"id":43, "is_admin":1,"name":"Laura Smith"}
// Users
var users = new Datastore({ filename: 'db/users.db' });
var id_user = 43;
console.log("------------
我使用electron forge对应用程序进行打包时出现了一些故障,比如下面的一个,我不知道是什么原因导致了这些故障:
电子锻造制造
✔ 检查您的系统
✔ 解析Forge配置
我们需要先打包你的申请,然后才能申请
✔ 正在准备打包arch:x64的应用程序
⠹ 编译应用程序未能编译文件:/var/folders/ld/v4nwzxnj7rq41\u f08r5\u clgw0000gn/T/electron packager/darwin-x64/flow-darwin-x64/electr
我正在构建一个基于电子的命令行工具。用户将从命令行调用它,然后它将打开一个普通的Electron窗口(这就是为什么我要使用Electron&webpack,而不是使用更简单的东西,如nexe),受他们通过CLI输入的内容的影响。我正在使用webpack dev server v2.4.5开发电子用户界面
我有一个npm脚本,dev,它使用所有必要的构建选项调用webpack dev服务器。不幸的是,当我在命令提示符下添加我自己的参数时,有些东西正在使用它们,而它们并没有进入我的电子应用程序
我的
有没有办法在不同的端口上运行Electron应用程序的UI?我有一个应用服务器(Wildfly)在端口8080上运行,当我启动Electron应用程序时,Electron应用程序窗口中会显示应用服务器默认页面。我相信电子在后台的8080端口上运行。是否有办法将其更改为端口9000?Electron应用程序基本上是一款支持NodeJS的Chromium浏览器,可从磁盘加载任何您想要显示的文件。它不会启动任何服务器(HTTP或其他任何东西)
“默认应用程序页面”我相信你指的是。例如,使用Electr
Electron v8.x引入了内置的。它通过将webPreferences中的拼写检查选项设置为true来激活。我想知道是否有可能在electron的WebView中使用此功能。如果是,如何使用它
我不能在electron应用程序中放置任何图像,背景图像不工作,img scr不工作,canvas.drawImage不工作,我可以做什么?
明显的代码:
<img src="file://bg.jpg" width="50px" height="50px">
...
body{ background-image: url('file:///bg.jpg') 50px 50px repeat; }
...
正文{背景图像:url('file:///bg.jpg')50px 50
我嵌入了Iframe,其源包含视频url。
但是
我得到一个错误:
错误:(代码:5媒体错误加密)功能策略已禁用requestMediaKeySystemAccess
有时我会
代码:6001,键入:“请求的密钥系统配置不可用”,标题:“DRM:请求的密钥系统配置不可用”,消息:“}”
嗨,伙计们,我在用e
我想覆盖浏览器窗口的默认快捷键“CTRL+W”,因为我有一些类似弹出窗口的快捷键
我遇到的问题是,当我像这样定义全局快捷方式时:
globalShortcut.register('CommandOrControl+W', () => {
console.log('CommandOrControl+W is pressed')
})
如何获取它是什么浏览器实例?如何获得正确浏览器窗口的引用当您创建浏览器窗口时,您是这样做的
const window =
我正在使用一个浏览器窗口图标,如下所示:
const nativeImage=require('electron')。nativeImage;
让image=nativeImage.createFromPath(uu dirname+'/public/img/1x.png');
image.setTemplateImage(true);
settingsWindow=新浏览器窗口({
身高:768,
宽度:1024,
可全屏显示:false,
可调整大小:false,
icon:image,//
我有一个运行在electron中的aurelia应用程序。我的源文件是typescript,我有electron和node的环境文件
因为我知道我是为在electron上使用而编译的,所以我正在将我的打字脚本传输到es6并加载系统模块;这意味着我可以关闭system.js的transpiler。我使用system.js和jspm,因为这是Aurelia一直在推动的方法
因此,在我的ts文件中:我希望能够做到:
import {remote} from 'electron';
不幸的是,syst
,所以我不得不降低我的电子版本。但是,我发现我无法通过在package.json文件中提供版本号来安装旧版本的Electron。以下是我的配置:
{
"name": "Example",
"version": "1.0.0",
"description": "",
"main": "./app/main.js",
"scripts": {
"postinstall": "install-app-deps",
"start": "electron ."
},
我正在尝试通过自动更新更新我的电子应用程序。我设法让它正常工作,而它检查更新、下载更新、安装更新并重新启动应用程序
但我真正想要的是,我可以检查是否有更新;如果有,请显示我最新的.yml文件中的发行说明,用户可以同意或取消更新。(见下面的屏幕截图)
当我输入update available事件时,我尝试检查releaseNote,但是第二个参数是“undefined”
除此之外,我也无法真正理解如何显示具有“是/否”按钮结构的可滚动文本对话框
现在,我已经制作了一个非常粗糙的messageBo
当Webex和GotoMeeting等程序运行屏幕/应用程序捕获时,使用electron/chromium getMediaStream API会导致黑色捕获。你知道如何解决这个问题吗?没有办法解决这个问题(但是你可以捕获异常并显示正确的消息)。
这是因为在任何给定的时间点,只有应用程序才能使用此功能(就像网络摄像头访问)没有办法解决此问题(但您捕获异常并显示正确的消息)。
这是因为在任何给定的时间点,只有应用程序才能使用此功能(就像网络摄像头访问一样)
我正在(第一次)使用Electron创建一个仅限Mac的应用程序。
我正在尝试使用IPC渲染器在我的应用程序菜单和主浏览器窗口中的内容之间进行通信
我将菜单设置如下,以发送信息“选择活动”:
const {Menu} = require('electron')
const electron = require('electron')
const app = electron.app
const BrowserWindow = electron.BrowserWindow
const templ
我有一个电子反应应用程序。我需要使用引导的样式。
早些时候,我使用了来自CDN的引导,它工作起来很有魅力。但我需要我的应用程序离线工作
所以我需要在我的应用程序中嵌入引导程序。我试着在本地下载bootstrap,然后在应用程序中使用它的css文件,但我碰巧看到,当我打包应用程序时,我找不到它
打包版本中的引导。我把CSS文件夹放在应用程序文件夹中。当我运行“npm run start”时,它起作用了,但当我打包应用程序时,它就不起作用了
<link rel="stylesheet" hre
我正在从NodeWebKit转移到electron,我发现HTML5内容的行为有些不同。所以我通过打印出process.versions检查了chrome版本,我得到:
{ http_parser: '2.7.0',
node: '8.9.3',
v8: '6.1.534.41',
uv: '1.15.0',
zlib: '1.2.11',
ares: '1.10.1-DEV',
modules: '57',
nghttp2: '1.25.0',
openssl:
标签: Electron
electron-packagernode-ffielectron-forgenative-module
我正在构建一个运行本机模块的电子应用程序。我升级到了Electron 7,但从那以后,我在使用Electron forge构建应用程序时遇到了以下错误
我还将我的节点版本升级到12.8.1
为了加载本机模块,我使用了一个节点ffi
我该如何解决这个问题
谢谢
An unhandled error has occurred inside Forge:
gyp info it worked if it ends with ok
gyp info using node-gyp@5.0.5
gyp in
我已经用Electron制作了一个应用程序,正在尝试用Electron Builder将其打包
链接到存储库
不包含节点\u模块文件夹:
我有一个名为build的文件夹,其中包含我的icon.ico和我的package.json,如下所示:
{
"name": "attendant",
"productName": "Attendant",
"version": "0.1.0",
"description": "A simple app to streamline
我正在尝试使用spectron和mocha测试我的electron应用程序,下面是我的文件“first.js”,其中包含我的测试:
const assert=require('assert');
const path=require('path');
const{Application}=require('spectron');
const electronPath=要求(‘电子’);
描述('GULP Tests',函数(){
此。超时(30000)
const app=新应用程序({
路径
我正在尝试使用Spectron和mocha对我的电子应用程序进行简单的测试。但是,每当我尝试使用浏览器窗口API时,我都会得到以下形式的错误:
TypeError:无法读取未定义的属性“…”
我在互联网上做了一些研究。我发现一些建议的解决方案是确保nodeIntegration设置为true,并且DevTools不会在应用程序窗口上打开。我已经确保满足这两个标准,但我仍然收到相同的错误。我错过了什么?我附上我的代码以供参考
main.js
const {app, BrowserWindow} =
是否有一种方法可以让相同的electron builder安装程序首先检查应用程序是否已安装。如果是,请使用一键安装选项,否则请使用完整的安装程序
在electron builder中,我们可以选择构建一键式安装程序或更标准的安装程序。目前,我们总是使用标准安装程序,因为我们更喜欢让用户决定在哪里安装我们的应用程序,以及是否为所有用户安装。完成后,对于更新,我们希望用户可以选择“重新安装”最新的软件。为此,one-clickinstall选项更有意义
注意:我在任何地方都找不到这个问题,但对我来
标签: Electron
electron-builderelectron-packagerelectron-forge
我已经创建和电子应用程序,并试图使用电子锻造为建设目的。
请查找我为创建electron应用程序而运行的以下命令:
#npm i -g create-react-app
#npm i -g @electron-forge/cli
#npx create-electron-app my-ele-app
上面的最后一个命令创建了一个项目my ele app。现在我也可以启动应用程序了。
#npm启动
package.json文件的内容是:
{
"name"
我在electron中创建了一个程序,其中:
当我打开一个窗口中的按钮时,会向主窗口发送一个ipc,检查窗口是否存在并刷新窗口,但它不工作。
也许我遗漏了文档中的一些内容,但我没有找到任何关于如何检查窗口是否为null或未定义的内容(已经尝试检查窗口是否为null,其他窗口是否为none值)。
谢谢你的关注
我认为这是一个范围问题。请确保您的代码可以访问窗口变量。像这样的方法应该会奏效:
var mywindow = null; //global def
app.once("ready",
我正在升级到巴别塔7。他们已经改变了配置文件的加载方式。
尽管我根据他们的文档做了很多尝试,但我还是无法让它工作
具有两个package.json结构的Electron应用程序解释如下:
问题是,似乎没有为第二个package.json所在的代码加载我的babel配置。(主渲染器)
我倾向于认为这是因为这种加载config和两个package.json的新方式,但也可能是其他原因
应用程序结构如下所示:
/package.json
/.babelrc (or babel.config.js n
标签: Electron
electron-builderelectron-packager
我开发了一个小的electron应用程序,并在我的~/.config/electron应用程序中存储了一些缓存文件。
现在,如果要卸载~/.config/electron应用程序,我需要删除该应用程序。是否有任何电子应用卸载事件可用
非常感谢 您的构建目标/目标平台是什么?对于不同的目标,答案可能不同。显然,我的平台是Linux(Ubuntu 16.04)。Ubuntu有多个可行的目标@GokulakannanT你有什么解决办法吗?我的目标是rpm和deb。@MANISHMOHAN的简短回答是否
在主进程中,ipcMain.on收到的消息来自send或sendSync
ipcMain.on('eventName',(event,arg)=>{
如果(/*???*/){
event.sender.send('AsyncEventName',arg)
}否则{
event.returnValue=arg
}
})
您只需将一个值传入send即可进行区分:
ipcRenderer.send("eventName", myArg, true);
ipcRenderer.sendSync("eve
以下是我的电子Js文档:
它在那里给出
let win = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: true
}
})
但我找不到它的真正含义,因为它是在其他模块中使用node的,但由于electron使用铬和nodejs!为什么我们需要将其设置为false,我了解到这是关于安全的
我的问题是:-
webPreference
我有一个简单的电子应用程序,可以查询SQL数据库并通过HTML表显示输出。我的一切都正常工作,但现在我需要每隔X分钟“刷新”HTML表(使用SQL查询的新结果)
现在,我已经在HTML中直接使用meta标记使其正常工作:http equiv=“refresh”content=“300”。这正确刷新页面每5分钟,这正是我想要的
尽管如此,问题是在执行SQL查询和构建HTML时,刷新会导致屏幕变白。显然,更好的解决方案是使用DOM,只修改自上次刷新以来实际更改的单元格。我遇到的问题是让“设置间隔”正
我需要简化应用程序的电子显示,如果显示更小,应用程序将缩小其大小,例如笔记本电脑显示器或iMac等大尺寸显示器。如果应用程序在笔记本电脑上运行,则大小应小于应用程序的实际大小。我尝试了webPreferenceAPI中的ZoomFactor,但它没有像我预期的那样工作
任何帮助都将不胜感激,提前感谢。在创建浏览器窗口后您应该拨打maximize()
对于您的用例(如果我理解的话),可以使用-确定启动时屏幕的大小,然后适当调整窗口的大小
const { app, BrowserWindow, s
1 2 3 4 5 6 ...
下一页 最后一页 共 19 页