web前端页面生成exe可执行文件的方法

在 HTML5的崛起、JavaScript要一统天下之际,有一个名为【跨平台】的技术越来越火。为什么会这么火?因为软件开发者只需一次编写程序,即可在 Windows、Linux、Mac、IOS、Android 等平台运行,大大降低了程序员的工作量,也使公司的产品可以快读迭代。曾经跨平台技术的不被看好,如今随着手机、电脑硬件的发展而快速发展。这一切,几乎由HTML5技术推动,当然,JavaScript 这个语言,是最大的功臣。

基于 HTML5 的跨平台技术比较出名的有 PhoneGap、Cordova,常常用于开发 webapp;还有 Egret、Cocos-creator、Unity 等,常用于开发游戏;还有基于 Node.js 的 nw.js,用于开发桌面应用,以及 Electron,一款比 nw.js 还强大的用网页技术来开发桌面应用的神器。

其实,以上都是废话,现在进入主题:怎么用 Electron 将网页打包成 exe 可执行文件!

假设:

1、你已经安装并配置好了 node.js (全局安装)
2、你已经用 npm 安装了 electron (全局安装)
3、你已经写好了前端网页(html、css、javascript 这些,或者基于这些的前端框架写好的网页)
4、以上三点看不懂的,赶紧去百度。。。

你如果具备了以上的假设,请继续往下看:

1、找到你的前端网页项目文件夹,新建 package.json、main.js、index.html 三个文件(注:其中的 index.html 是你的网页首页)

你的项目目录/

├── package.json
├── main.js
└── index.html

2、在 package.json 中添加如下内容

{
 "name" : "app-name",
 "version" : "0.1.0",
 "main" : "main.js"
}

3、在 main.js 中添加下面的内容,这个 main.js 文件就是上面 package.json 中的 "main"键 的值,所以可根据需要修改

const {app, BrowserWindow} = require('electron')
const path = require('path')
const url = require('url')
// Keep a global reference of the window object, if you don't, the window will
// be closed automatically when the JavaScript object is garbage collected.
let win
function createWindow () {
 // Create the browser window.
 win = new BrowserWindow({width: 800, height: 600})
 // and load the index.html of the app.
 win.loadURL(url.format({
 pathname: path.join(__dirname, 'index.html'),
 protocol: 'file:',
 slashes: true
 }))
 // Open the DevTools.
 // win.webContents.openDevTools()
 // Emitted when the window is closed.
 win.on('closed', () => {
 // Dereference the window object, usually you would store windows
 // in an array if your app supports multi windows, this is the time
 // when you should delete the corresponding element.
 win = null
 })
}
// This method will be called when Electron has finished
// initialization and is ready to create browser windows.
// Some APIs can only be used after this event occurs.
app.on('ready', createWindow)
// Quit when all windows are closed.
app.on('window-all-closed', () => {
 // On macOS it is common for applications and their menu bar
 // to stay active until the user quits explicitly with Cmd + Q
 if (process.platform !== 'darwin') {
 app.quit()
 }
})
app.on('activate', () => {
 // On macOS it's common to re-create a window in the app when the
 // dock icon is clicked and there are no other windows open.
 if (win === null) {
 createWindow()
 }
})
// In this file you can include the rest of your app's specific main process
// code. You can also put them in separate files and require them here.

4、如果你的网页首页的文件名不是 “index.html”,那么请在 main.js 中将其中的 'index.html' 修改为你的网页首页名

5、打开 DOS,cd 到你的项目目录(或直接在你的项目目录下空白的地方 shift+鼠标右键,然后点击在此处打开命令窗口,这里看不懂的,唉,百度吧少年)

6、在上一步的 DOS 下,输入 npm install electron-packager -g全局安装我们的打包神器

npm install electron-packager -g

7、安装好打包神器后,还是在上一步的 DOS 下,输入 electron-packager . app --win --out presenterTool --arch=x64 --version 1.4.14 --overwrite --ignore=node_modules 即可开始打包

electron-packager . app --win --out presenterTool --arch=x64
 --version 1.4.14 --overwrite --ignore=node_modules

这个命令什么意思?蓝色部分可自行修改:

electron-packager . 可执行文件的文件名 --win --out 打包成的文件夹名 --arch=x64位还是32位 --version版本号 --overwrite --ignore=node_modules

8、打包成功后,会生成一个新的文件夹,点进去,找到 exe 文件,双击就可以看到网页变成了一个桌面应用啦!

以上是最简单的打包方式,至于怎么修改窗口大小、菜单栏怎么加、怎么调用系统API这些,就给你慢慢去研究Electron了。

如果你打包总是不成功,觉得很烦,同时对扩展功能没什么要求的话,

点击进入我的Coding代码仓库:https://coding.net/u/linhongbijkm/p/Electron-packager-build-project/git

里面有我已将内容为 hello,world 的 index.html 网页通过 Electron 框架打包为 windows 环境下的桌面应用。

现只需将你的网页前端项目复制到 /resources/app/project 目录下,双击 exe 文件即可以桌面应用的方式运行你的网页。

总结

以上所述是小编给大家介绍的web前端页面生成exe可执行文件的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

您可能感兴趣的文章:

  • node-webkit打包成exe文件被360误报木马的解决方法
  • Web系统通过EXE文件实现读取客户电脑MAC等硬件信息且兼容非IE浏览器
  • 解析利用wsdl.exe生成webservice代理类的详解
  • win2003禁止web等目录执行exe,bat,com的方法
(0)

相关推荐

  • node-webkit打包成exe文件被360误报木马的解决方法

    最近项目需要用到node-webkit.处理古老级用户的兼容以及他们心里的'数据安全'问题. 1.下载完node-webkit 2.制作appName.nw文件 3.copy /b nw.exe+appName.nw  TestAppName.exe 到目前为止,目录下生成了TestAppName.exe文件 ,双击运行很完美. 但,直接将TestAppName.exe换个目录,却打不开. google+百度的解决方案:使用Enigma Virtual Box工具,打包成exe文件.(Enigm

  • 解析利用wsdl.exe生成webservice代理类的详解

    利用wsdl.exe生成webservice代理类:根据提供的wsdl生成webservice代理类1.开始->程序->Visual Studio 2005 命令提示2.输入如下红色标记部分D:/Program Files/Microsoft Visual Studio 8/VC>wsdl /language:c# /n:TestDemo /out:d:/Temp/TestService.cs D:/Temp/TestService.wsdl在d:/Temp下就会产生一个TestServ

  • Web系统通过EXE文件实现读取客户电脑MAC等硬件信息且兼容非IE浏览器

    对于一般情况来说,我们用得最多的可能是使用ActiveX控件的方法来实现,但此方案只适用于IE浏览器.为了能兼容不同的浏览器,如FireFox等,我们就需要考虑到一种比较通用的方法.此方法我们可以参考"在很多网站中,会在网页的某个地方给一个链接来直接启动QQ来聊天".这种方法可以实现Web系统来调用客户端电脑的某个exe文件(前提是在客户端必须安装需调用的exe应用程序).QQ的解决方法是采用在OS中注册一种自定义的协议,如:tencent://message/?uin=8888888

  • win2003禁止web等目录执行exe,bat,com的方法

    利用gpedit.msc(组策略)禁止目录执行某些文件. 首先: 运行-----输入 gpedit.msc ----计算机配置---windows 设置----安全设置↓软件限制策略(如果旁边没有什么东西.点右键创建一个策略)---其他规则----(点右键)新建立一个路径规则(p). 如图1: 这样d:\wwwroot\目录就无法执行任何exe.bat.com文件了. 不管你是什么权限.即使是system都无法执行. 这样大大的提高了被使用exp提升权限的安全性. 当然这里提一个思路.  .大家

  • web前端页面生成exe可执行文件的方法

    在 HTML5的崛起.JavaScript要一统天下之际,有一个名为[跨平台]的技术越来越火.为什么会这么火?因为软件开发者只需一次编写程序,即可在 Windows.Linux.Mac.IOS.Android 等平台运行,大大降低了程序员的工作量,也使公司的产品可以快读迭代.曾经跨平台技术的不被看好,如今随着手机.电脑硬件的发展而快速发展.这一切,几乎由HTML5技术推动,当然,JavaScript 这个语言,是最大的功臣. 基于 HTML5 的跨平台技术比较出名的有 PhoneGap.Cord

  • Windows下将Python文件打包成.EXE可执行文件的方法

    在使用Python做开发的时候,时不时会给自己编写了一些小工具辅助自己的工作,但是由于开发依赖环境问题,多数只能在自己电脑上运行,拿到其它电脑后就没法运行了.这显得很不方便,不符合我们的初衷,那么有没有一种什么办法可以使我们编写好的程序,可以直接在各种windows下运行的呢? 答案是:有的,说到windows大家都能想到( .exe )这个东西吧!没错,就是把Python编写的代码打包成可执行的 exe 文件,直接在系统上运行,这个问题不久完美解决了吗? 下面就来讲讲如何实现,具体如下: 安装

  • pyqt5打包成exe可执行文件的方法

    本文内容会引起杀毒软件的莫名兴奋,建议先安抚杀毒软件,让杀毒软件先休息一下再继续操作 安装python3.6 转exe会遇到很多问题,其中部分是由于python版本不合适引起的,如果可以,尽量用3.5或3.6版本. 在Windows上安装python3.6.8 安装时勾选Add to path选项添加到环境变量 打开终端查看版本: python -V pip -V 准备工作 安装包: pip isntall pyinstaller pip install auto-py-to-exe pip i

  • Python实现学生管理系统并生成exe可执行文件详解流程

    目录 一.准备工作 二.代码流程 三.打包exe可执行程序 话说这能难倒我吗?赶赶单单~ 来 ,开搞! 一.准备工作 用到的软件准备一哈 Python 3.8 Pycharm 2021.2 知识点 Python基础语法 基本的数据类型与结构 基本的逻辑控制语句 实战小项目 二.代码流程 = 赋值 就是把等号左边的内容 用 等号右边的这个变量名字 接收 msg = """************************************************** 欢迎使

  • 如何利用python写GUI及生成.exe可执行文件

    目录 一.GUI(Graphical User Interface(图形用户接口)) 1.导入需要用到的包 2.获取文件夹中所有图片 3.定义一个类windows 4.创建窗口和frame 5.定义需要用到的函数(下一页.上一页等按钮要用到的) 6.创建按钮.画布,调用主程序 效果展示 完整代码 二.生成exe文件 1.安装pyinstaller 2.打包python程序 3.运行exe文件 4.常用命令参数 效果展示 执行exe应用 总结 一.GUI(Graphical User Interf

  • Vue页面生成PDF的最佳方法推荐

    目录 前言 安装依赖 页面转图片 图片转PDF A4打印适配 总结 前言 最近项目有个需求,将系统统计的数据生成分析报告,然后可以导出成PDF. 这种方法可以有两种,一种是直接调用打印,用户通过浏览器提供的打印页面手动选择导出PDF.当然这种方式兼容性差,且体验不好,显然不是我们想要的效果. 那么第二种方法的实现思路是什么呢? 首先生成报告页面,也就是常规页面: 然后将页面转换成图片( 用到的组件 html2canvas ): 最后将图片导出成PDF( 用到的组件 jspdf ). 安装依赖 n

  • Python中py文件转换成exe可执行文件的方法

    一.背景 今天闲着无事,写了一个小小的Python脚本程序,然后给同学炫耀的时候,发现每次都得拉着其他人过来看着自己的电脑屏幕,感觉不是很爽,然后我想着网上肯定有关于Python脚本转换成可执行文件的操作,事不宜迟,我就开始了问度娘,各种寻找资料,发现网上的资料太多了,有一些比较老了,适合Python2.x系列,在现在Python3流行的时代,我们当然是直接无视,但是各种方法凌乱的很,各种教程也是或全或缺的,鄙人也捣鼓了可久,后来发现一种方法挺多人用的,在自己的程序成功打包成执行文件并在其他人电

  • 浅析基于WEB前端页面的页面内容搜索的实现思路

    在网页做查询以前都是这么做的 表单获取关键字 –> 传入后端SQL语句处理 –>数据返回给前端显示 今天突然到游览器的Ctrl+F的这个功能怎么实现的,把数据一次放在页面上,然后在用JS 去匹配页面的内容. 不管怎么样,现在完成了功能,然后在做优化 复制代码 代码如下: $(function(){     var UserArray = new Array();     var TurenameArray = new Array();     var table = $("table

  • 将Python文件打包成.EXE可执行文件的方法

    利用Python写了一个小脚本想要传给使用Windows但没有装Python的朋友执行,这时候就可以利用将档案包装成exe档案,让没有Python的朋友也可以执行.本篇将介绍利用套件「PyInstaller」制作exe档. 1|0安装方法 #安装pyinstaller pip install pyinstaller #安装依赖 pip install pywin32-ctypes 2|0常用参数介绍 pyinstaller -h来查看参数 -F打包成一个exe文件 -i图标路径 -w使用视窗,无

  • 易语言生成exe文件的方法

    易语言是一款全中文可视化编程软件,非常的好用方便,易学易懂,现在已经有非常多的人在使用易语言了,我们写好的软件该怎么编译生成exe文件呢 易语言 首先打开易语言,编写好程序代码,或者打开一份已经保存的易语言文件,扩展名为".e" 然后点击菜单栏的程序-配置 填上你的程序名称,程序描述,程序备注,版本号,然后点击作者,输入作者名字或者昵称,防止别人盗用,当然如果不需要这些,只是做来自己用的话也可以直接跳过第二第三步 这里填的信息会写入到 右键-属性里面的软件信息里 点击菜单栏中的编译-静

随机推荐