1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| const { app, BrowserWindow, Menu, ipcMain, session, } = require('electron'); const path = require('path'); const os = require('os');
session.defaultSession.on('will-download', (event, item, webContents) => { const fileName = item.getFilename(); const _path = path.join(os.homedir(), `Downloads/${fileName}`); item.setSavePath(_path); item.once('done', (event, state) => { if (state === 'completed') { require('fs').chmodSync(_path, 0o444); console.log(`downloadCompleted: ${_path}`); win.webContents.send('downloadCompleted', _path); } console.log(`Download status: ${state}`); }); });
|