Yolofyi's Guide
首页
  • 前端文章

    • JavaScript
    • HTML
    • CSS
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • Mysql

    • Mysql
  • Java

    • Java基础
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 学习
  • 面试
  • 助手
收藏
  • 分类
  • 标签
  • 归档

Yolofyi

船是自己,灯塔是自己,岸也是自己
首页
  • 前端文章

    • JavaScript
    • HTML
    • CSS
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • Mysql

    • Mysql
  • Java

    • Java基础
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 学习
  • 面试
  • 助手
收藏
  • 分类
  • 标签
  • 归档
  • HTML

  • CSS

  • JavaScript文章

  • 学习笔记

  • Electron

    • node获取桌面快捷图标
    • electron-updater
    • electron-builder打包相关配置
  • 前端
  • Electron
yolofyi
2023-07-25

node获取桌面快捷图标

引入模块

const electron =
  process.env.IS_ELECTRON === true ? window.require('electron') : null;
const remote = process.env.IS_ELECTRON === true ? electron.remote : null;
const app = process.env.IS_ELECTRON === true ? remote.app : null;
const shell = process.env.IS_ELECTRON === true ? electron.shell : null;
const dialog = process.env.IS_ELECTRON === true ? remote.dialog : null;
const path = require('path');
const fs = require('fs');

//获取桌面的路径
const desktopPath = app.getPath('desktop')
1
2
3
4
5
6
7
8
9
10
11

关键脚本

      let desktopFiles = fs.readdirSync(desktopPath);
      for (let file of desktopFiles) {
        let url = undefined;
        const fileName = file.split('.')[0];
        const suffix = file.split('.')[1];
        const fileUrl = desktopPath + '\\' + file;
        if (suffix === 'lnk') {
          try {
            let lnk = shell.readShortcutLink(fileUrl);
            url = lnk.target;
          } catch (e) {
            url = '';
            console.log(fileUrl + '获取快捷方式源目录失败');
          }
        }

        if (url) {
          let application = {};
          application.url = url;
          application.text = fileName;
          await app.getFileIcon(url).then(fileIcon => {
            application.imgSrc = fileIcon.toDataURL();
          });
          this.localApplicationData.push(application);
        }
      }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
上次更新: 2023/08/06, 22:51:57
JS设计模式总结笔记
electron-updater

← JS设计模式总结笔记 electron-updater→

最近更新
01
MySQL开发规范及慢查询优化
08-25
02
linux增加swap交换空间
08-16
03
uni-app云打包Android Apk
08-13
更多文章>
| Copyright © 2022-2023 yolofyi.com - All rights reserved | 鄂ICP备2022003053号 |
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式