前端打开.chm文件
项目为electron-vue项目,找到两种打开.chm文件的方式
-
Node子进程执行shell命令
-
const exec = require('child_process').exec; exec(path);//path为存放.chm文件的位置
-
-
调用Electron的shell模块的api打开
-
const { shell } = require('electron'); shell.openPath(path);//path为存放.chm文件的位置
-
-
保证只有一个.chm文件打开
-
//这里用到的办法比较笨,每次打开.chm文件前,都杀死hh.exe进程,windows是调用该进程打开.chm文件的 exec('taskkill /F /im hh.exe', ()=>{ let path = process.cwd()+"\\helper\\.chm";//process.cwd()获取运行路径,后面拼 接.chm文件地址 shell.openPath(path) //shell用的Electron的shell模块 });
-
-
原理
- 这里打开.chm文件都是通过执行shell命令来打开的,类似于在cmd窗口直接输入文件全路径然后回车。