2017-03-08 44 views
1

我已經得到了我的電子構建文件的一個WIN EXE和安裝程序,但圖標不是我的。在我的main.js文件中,我有附加圖標的代碼,但是我只能使它在createWindow函數內工作。在函數外面,我收到一條錯誤消息。該exe文件將運行,我得到我的圖標,雖然這是我的錯誤;安裝程序根本無法工作。我試過了幾個教程,但是他們都沒有解決這個問題。電子 - 將圖標添加到應用程序

Main.js

const {app, BrowserWindow, Tray} = require('electron') 
const path = require('path') 
const url = require('url') 
let win 
function createWindow() { 
const appIcon = new Tray('icon/app.png') 
win = new BrowserWindow({width: 1920, height: 1080, icon: 'icon/app.ico'}) 
console.log(appIcon, win) 
win.loadURL(url.format({ 
pathname: path.join(__dirname, 'app/app.html'), 
protocol: 'file:', 
slashes: true 
})) 
win.on('closed',() => { 
win = null 
}) 
} 
app.on('ready', createWindow) 
app.on('window-all-closed',() => { 
if (process.platform !== 'darwin') { 
app.quit() 
} 
}) 
app.on('activate',() => { 
if (win === null) { 
createWindow() 
} 
}) 

的package.json

{ 
"name": "myapp", 
"version": "1.0.0", 
"description": "MyApp", 
"private": true, 
"main": "main.js", 
"build": { 
    "appID": "myapp", 
    "productName": "MyApp", 
    "icon": "icon/app.ico" 
}, 
"scripts": { 
     "start": "electron ." , 
     "package": "", 
    }, 
"author": "Me", 
"license": "ISC", 
"devDependencies": {"electron": "^1.6.1"} 
} 

我不知道該怎麼在這裏做。

+0

是否要替換爲默認應用程序圖標或其他特別的東西? – IsuruKusumal

+0

我想讓我的圖標替換所有位置的默認設置。 – Tim

+0

任何想法爲什麼電子應用程序不能自動打開窗口系統啓動在Windows TabMode中,但在桌面模式下工作完美? – anu

回答

0

可以使用和main.js

mainWindow = new BrowserWindow({width: 800, height: 600,icon: __dirname + '/icon.ico'});

和安裝程序裏面,如果你是使用電子建設者

"devDependencies": { 
    "electron": "^1.4.15", 
    "electron-builder": "^12.3.1" 
    }, 

請在根文件夾並命名爲構建在那個文件夾裏面添加你的圖標.ico

有時候你需要重新調整電子或bui ld應用程序2次

相關問題