Подтвердить что ты не робот

Electron создает установщик MSI с помощью электронно-строительной системы

Мне удалось создать установщик .exe для Windows с помощью Electron Builder, я создаю 2 package.json, как указано в документации:

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

В итоге у меня была папка с рабочим .exe enter image description here

"dist:win64": "./node_modules/.bin/build --platform win32 --arch x64"

Раздел сборки моего основного package.json

"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, который помещает содержимое в каталог программных файлов.

enter image description here

Вместо этого я закончил установку в папке C:\Users\UserHome\AppData\Local\Electron с установщиком, как показано ниже.

enter image description here

Есть ли способ иметь настоящий установщик .msi, использующий электронный сборщик, который помещает содержимое в папку с программным файлом. Единственный работающий проект - это https://github.com/theodo/electron-boilerplate, но в нем используется прежняя версия устройства для сборки электронов.

В электронном документе, устанавливающем noMsi в значение false, нужно добиться noMsi...

Should Squirrel.Windows create an MSI installer?
4b9b3361

Ответ 1

На самом деле вам не нужен установленный MSI для установки приложения в Program Files.

Если вы отключите один щелчок в конфигурации nsis (oneClick), пользователю будет предложено выполнить однопользовательскую установку (в AppData) или на компьютер (в Program Files).

Если вы не хотите предоставлять им выбор, вы можете установить для perMachine значение false, что разрешит установку только в Program Files:

"nsis": {
  "oneClick": false,
  "perMachine": false
},

Я бы лично оставил им возможность, так как они все еще могут быть установлены без прав администратора!

В последней версии electron-builder также есть опция allowToChangeInstallationDirectory которая позволяет пользователю выбрать любое место установки.

Ответ 3

Я не получил этого, чтобы работать (пока), но я понимаю, что это наоборот (ужасное название).

"noMsi": false // will make an MSI
"noMsi": true // will NOT make an MSI

Ответ 4

Если вам нужен только установщик в формате exe (я не знаю о msi), вы можете использовать electronic-builder для сборки exe файла, распакованного в каталог. Ознакомьтесь с документацией по адресу http://npmjs.org/package/electron-builder. Документация довольно проста. После того, как вы получите распакованную папку с вашим exe файлом, используйте "Inno Setup Compiler", чтобы создать профессионально выглядящий установщик. Как только вы это освоите, на это уйдет всего 5 минут.

Ответ 5

Я понял это, посмотрев на цель. сделать это

"win": {
  "target": [
   "msi"
   ]
//your code here
},