最近做到一个需求,web端需要调用第三方exe,刚开始尝试在后端打开,vs运行没毛病,部署到IIS就歇菜了,网上查了下,说是要设置IIS权限,摆弄下了没什么用,就放弃了,决定浏览器打开exe,以此记录下
1.写注册表
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\OpenExe]
@="OpenExe Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\OpenExe\shell]
@=""
[HKEY_CLASSES_ROOT\OpenExe\shell\open]
@=""
[HKEY_CLASSES_ROOT\OpenExe\shell\open\command]
@="D:\\ExeDemo\\DoExe.bat %1"
2.写bat文件
start D:\\ExeDemo\\LocalExe.exe %2 %3 %4
此处 %2 %3 %4表示传三个参数给exe
3.前端调用
<el-button type="primary" @click="doexe()">打开</el-button>
doexe (){
var url = 'OpenExe:/,param1,param2,param3'
window.open(url, '_blank')
},
注意这里的OpenExe要和注册表里的名称对应,传递参数这块,我自己是这样传,并且能成功接收