diff --git a/src/preload.js b/src/preload.js index 3319dcb..abe90ed 100644 --- a/src/preload.js +++ b/src/preload.js @@ -176,7 +176,7 @@ quickcommand = { item.text = '' Object.keys(s).forEach(k => item[k] = s[k]) item.id = i - s.icon && (item.text += `
`) + s.icon && (item.text += `
`) s.title && (item.text += `
${s.title}
`) s.description && (item.text += `
${s.description}
`) } else { @@ -369,6 +369,22 @@ quickcommand = { let local = path.join(root, require('crypto').createHash('md5').update(url).digest('hex')) if (forceUpdate || !fs.existsSync(local)) await this.downloadFile(remote, local) return require(local) + }, + + // 运行vbs脚本 + runVbs: function (script) { + if (process.platform != 'win32') return + return new Promise((reslove, reject) => { + var tempfile = path.join(os.tmpdir(), 'TempVBSScript.vbs') + fs.writeFile(tempfile, iconv.encode(script, 'gbk'), err => { + child_process.exec(`cscript.exe /nologo "${tempfile}"`, { + encoding: "buffer" + }, (err, stdout, stderr) => { + if (err) reject(iconv.decode(stderr, 'gbk')) + else reslove(iconv.decode(stdout, 'gbk')) + }); + }) + }) } }