選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

index.js 1.0KB

123456789101112131415161718192021222324252627282930313233343536
  1. var path = require('path');
  2. var spawn = require('child_process').spawn;
  3. var debug = require('debug')('electron-squirrel-startup');
  4. var app = require('electron').app;
  5. var run = function(args, done) {
  6. var updateExe = path.resolve(path.dirname(process.execPath), '..', 'Update.exe');
  7. debug('Spawning `%s` with args `%s`', updateExe, args);
  8. spawn(updateExe, args, {
  9. detached: true
  10. }).on('close', done);
  11. };
  12. var check = function() {
  13. if (process.platform === 'win32') {
  14. var cmd = process.argv[1];
  15. debug('processing squirrel command `%s`', cmd);
  16. var target = path.basename(process.execPath);
  17. if (cmd === '--squirrel-install' || cmd === '--squirrel-updated') {
  18. run(['--createShortcut=' + target + ''], app.quit);
  19. return true;
  20. }
  21. if (cmd === '--squirrel-uninstall') {
  22. run(['--removeShortcut=' + target + ''], app.quit);
  23. return true;
  24. }
  25. if (cmd === '--squirrel-obsolete') {
  26. app.quit();
  27. return true;
  28. }
  29. }
  30. return false;
  31. };
  32. module.exports = check();