Anonymous
Значок приложения электронного приложения не изменяется после установки в Windows
Сообщение
Anonymous » 27 янв 2025, 14:32
У меня возникла проблема с настройкой значка приложения в моем проекте Electron.js. Во время разработки собственный значок отображается правильно, но после сборки и установки приложения в Windows 10 значок Electron по умолчанию по-прежнему отображается.
Что я пробовал:
Значок Файл:
Я создал файл .ico и проверил, что он работает при применении к папкам вручную.
Поместил файл .ico в общие папки и папки ресурсов.
Electron Конфигурация:
В main.js:
Код: Выделить всё
import { app, BrowserWindow, ipcMain } from "electron";
import { fileURLToPath } from "node:url";
import path from "node:path";
import { createNote, deleteNote, getNotes, readNote, writeNote } from "./libs";
const __dirname = path.dirname(fileURLToPath(import.meta.url));
process.env.APP_ROOT = path.join(__dirname, "..");
export const VITE_DEV_SERVER_URL = process.env["VITE_DEV_SERVER_URL"];
export const MAIN_DIST = path.join(process.env.APP_ROOT, "dist-electron");
export const RENDERER_DIST = path.join(process.env.APP_ROOT, "dist");
process.env.VITE_PUBLIC = VITE_DEV_SERVER_URL
? path.join(process.env.APP_ROOT)
: path.join(process.env.APP_ROOT, "resources");
const iconPath = process.env.NODE_ENV === "development"
? path.join(process.env.VITE_PUBLIC, "/src/assets/logo.ico")
: path.join(RENDERER_DIST, "logo.ico");
console.log(iconPath)
let win: BrowserWindow | null;
function createWindow() {
win = new BrowserWindow({
width: 900,
height: 600,
minWidth: 900,
minHeight: 600,
frame: false,
transparent: true,
visualEffectState: "active",
center: true,
title: "Note taking app",
titleBarStyle: "hidden",
trafficLightPosition: { x: 15, y: 10 },
icon: iconPath,
webPreferences: {
preload: path.join(__dirname, "preload.mjs"),
contextIsolation: true,
sandbox: true,
nodeIntegration: false,
},
});
< /code>
Конфигурация электронного строителя (package.json) < /p>
"build": {
"appId": "com.example.electronproject",
"productName": "Notepad Premium",
"files": [
"dist/**/*",
"dist-electron/**/*",
"node_modules/**/*",
"resources/**/*",
"public/logo.ico",
"package.json"
],
"directories": {
"output": "release"
},
"extraResources": [
{
"from": "/src/assets/logo.ico",
"to": "logo.ico"
}
],
"win": {
"target": [
"nsis"
],
"icon": "/src/assets/logo.ico",
"signAndEditExecutable": false
},
"nsis": {
"oneClick": false,
"allowToChangeInstallationDirectory": true
},
"asar": true
}
даже после выполнения всех этих шагов установленное приложение по-прежнему отображает значок Electron по умолчанию:
На панели задач при запуске приложения.
Меню «Пуск» и ярлык на рабочем столе.
Однако правильный значок отображается в режиме разработки.
Подробнее здесь:
https://stackoverflow.com/questions/793 ... on-windows
1737977521
Anonymous
У меня возникла проблема с настройкой значка приложения в моем проекте Electron.js. Во время разработки собственный значок отображается правильно, но после сборки и установки приложения в Windows 10 значок Electron по умолчанию по-прежнему отображается. Что я пробовал: Значок Файл: Я создал файл .ico и проверил, что он работает при применении к папкам вручную. Поместил файл .ico в общие папки и папки ресурсов. Electron Конфигурация: В main.js: [code]import { app, BrowserWindow, ipcMain } from "electron"; import { fileURLToPath } from "node:url"; import path from "node:path"; import { createNote, deleteNote, getNotes, readNote, writeNote } from "./libs"; const __dirname = path.dirname(fileURLToPath(import.meta.url)); process.env.APP_ROOT = path.join(__dirname, ".."); export const VITE_DEV_SERVER_URL = process.env["VITE_DEV_SERVER_URL"]; export const MAIN_DIST = path.join(process.env.APP_ROOT, "dist-electron"); export const RENDERER_DIST = path.join(process.env.APP_ROOT, "dist"); process.env.VITE_PUBLIC = VITE_DEV_SERVER_URL ? path.join(process.env.APP_ROOT) : path.join(process.env.APP_ROOT, "resources"); const iconPath = process.env.NODE_ENV === "development" ? path.join(process.env.VITE_PUBLIC, "/src/assets/logo.ico") : path.join(RENDERER_DIST, "logo.ico"); console.log(iconPath) let win: BrowserWindow | null; function createWindow() { win = new BrowserWindow({ width: 900, height: 600, minWidth: 900, minHeight: 600, frame: false, transparent: true, visualEffectState: "active", center: true, title: "Note taking app", titleBarStyle: "hidden", trafficLightPosition: { x: 15, y: 10 }, icon: iconPath, webPreferences: { preload: path.join(__dirname, "preload.mjs"), contextIsolation: true, sandbox: true, nodeIntegration: false, }, }); < /code> Конфигурация электронного строителя (package.json) < /p> "build": { "appId": "com.example.electronproject", "productName": "Notepad Premium", "files": [ "dist/**/*", "dist-electron/**/*", "node_modules/**/*", "resources/**/*", "public/logo.ico", "package.json" ], "directories": { "output": "release" }, "extraResources": [ { "from": "/src/assets/logo.ico", "to": "logo.ico" } ], "win": { "target": [ "nsis" ], "icon": "/src/assets/logo.ico", "signAndEditExecutable": false }, "nsis": { "oneClick": false, "allowToChangeInstallationDirectory": true }, "asar": true } [/code] даже после выполнения всех этих шагов установленное приложение по-прежнему отображает значок Electron по умолчанию: На панели задач при запуске приложения. Меню «Пуск» и ярлык на рабочем столе. Однако правильный значок отображается в режиме разработки. Подробнее здесь: [url]https://stackoverflow.com/questions/79390580/electron-app-icon-not-changing-after-installation-on-windows[/url]