首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用electron-builder创建MSI安装程序

使用electron-builder创建MSI安装程序
EN

Stack Overflow用户
提问于 2016-04-04 17:30:38
回答 6查看 22.7K关注 0票数 18

我设法使用电子生成器为windows创建了一个.exe安装程序,正如文档中指出的那样,我创建了2个package.json:

https://github.com/electron-userland/electron-builder

我最终得到了一个文件夹,其中包含一个有效的.exe

代码语言:javascript
复制
"dist:win64": "./node_modules/.bin/build --platform win32 --arch x64"

我的主package.json的build部分是

代码语言:javascript
复制
"build": {
    "app-bundle-id": "org.test.mytest",
    "app-category-type": "public.app-category.graphics-design",
    "osx": {
      "contents": [
        {
          "x": 410,
          "y": 150,
          "type": "link",
          "path": "/Applications"
        },
        {
          "x": 130,
          "y": 150,
          "type": "file"
        }
      ]
    },
    "win": {
      "title": "My awesome app",
      "version": "2.28.999.1",
      "noMsi": false,
      "authors": "Author"
    }
  }

一切都很好,我有和.exe安装程序,但没有办法有一个.msi安装程序中的内容放在程序文件目录。

相反,我最终在C:\Users\UserHome\AppData\Local\Local文件夹中进行了安装,安装程序如下所示。

有没有办法有一个真正的.msi安装程序使用电子生成器,将内容放在程序文件夹中。唯一起作用的项目是这个https://github.com/theodo/electron-boilerplate,但它使用的是以前版本的电子生成器。

在电子文档中将noMsi设置为false,应该可以做到这一点...

代码语言:javascript
复制
Should Squirrel.Windows create an MSI installer?
EN

回答 6

Stack Overflow用户

发布于 2017-01-10 20:41:33

要将应用程序安装到Program Files中,实际上并不需要安装MSI。

如果在nsis配置(oneClick)中禁用单击,则会提示用户是执行单用户安装(在AppData中)还是按计算机安装(在Program Files中)。

如果您不想让他们选择,您可以将perMachine设置为false,这将只允许安装到程序文件中:

代码语言:javascript
复制
"nsis": {
  "oneClick": false,
  "perMachine": false
},

我个人会留下他们的选择,因为他们仍然可以安装没有管理员权限!

在最新版本的electron-builder中,还有一个allowToChangeInstallationDirectory选项,允许用户选择任何安装位置。

票数 5
EN

Stack Overflow用户

发布于 2016-07-01 06:24:46

正如wiki of latest electron builder release中所述,您必须在build.win中使用msi选项

代码语言:javascript
复制
"build": {
    "app-bundle-id": "org.test.mytest",
    "app-category-type": "public.app-category.graphics-design",
    ...
    ,
    "win": {
      "title": "My awesome app",
      "version": "2.28.999.1",
      "msi": true,
      "authors": "Author"
    }
  }
票数 4
EN

Stack Overflow用户

发布于 2017-09-03 15:27:02

如果你想要的是一个exe格式的安装程序(我不知道msi),你可以使用e-builder把exe解压到一个目录下。请查看http://npmjs.org/package/electron-builder上的文档。文档非常简单明了。在您获得解压后的文件夹与您的exe,使用"Inno安装编译器“创建一个专业的外观安装程序。一旦你掌握了诀窍,只需要5分钟就可以完成整个过程。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36398955

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档