位置: IT常识 - 正文

浏览器打开任意可执行exe文件方法(浏览器任意链接在哪里)

编辑:rootadmin
思路:通过注册表注册自定义URL协议执行bat脚本,将文件路径作为参数传入 环境:win10 前置问题与条件 问题1:可以从浏览器直接打开可执行文件吗? 答:不能。其实可以通过 ActiveXObject 实现软件直接打开,但是它是不安全的,并且现在被大多数现代浏览器禁止,只能在 ie 使用。而通过 ...

推荐整理分享浏览器打开任意可执行exe文件方法(浏览器任意链接在哪里),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:打开任何网站的浏览器,浏览器打开任意网页,打开所有浏览器,浏览器打开任意窗口,打开任意一个浏览器,浏览器打开任意窗口,浏览器打开任意窗口,浏览器打开任意界面完成网络认证,内容如对您有帮助,希望把文章链接给更多的朋友!

思路:通过注册表注册自定义URL协议执行bat脚本,将文件路径作为参数传入

环境:win10

前置问题与条件

问题1:可以从浏览器直接打开可执行文件吗?

答:不能。其实可以通过 ActiveXObject 实现软件直接打开,但是它是不安全的,并且现在被大多数现代浏览器禁止,只能在 ie 使用。而通过注册表自定义URL协议,通过将文件名、操作等作为参数加入URL并由浏览器访问,可以触发协议执行bat脚本执行相应操作。

问题2:如何获取文件的路径?可以从浏览器上通过 <input type="file"> 直接获取吗?

答:问题1我们知道无法在浏览器直接可执行exe文件。从外部打开的话,就需要有文件的路径。但是同样的,现代浏览器禁止从 <input type="file"> 中得到文件的路径信息,将 file.path 定义为 undefined 或者 C:\fakepath\<文件名>,虽然ie浏览器可以,但是需要修改安全设置,也不是很靠谱。无法从浏览器直接获取,就只能指定一个文件夹存放exe的快捷方式了,这个方法需要第一次执行前将需要的可执行文件的快捷方式集中到一个指定文件夹中,虽然有点麻烦,但是总归是获取文件路径的一个办法。

注册自定义URL协议

新建 reg 文件:

Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\EMTool3]@="URL:EMTool3 Protocol""URL Protocol"=""[HKEY_CLASSES_ROOT\EMTool3\DefaultIcon]@="EMTool3.exe,1"[HKEY_CLASSES_ROOT\EMTool3\shell][HKEY_CLASSES_ROOT\EMTool3\shell\open][HKEY_CLASSES_ROOT\EMTool3\shell\open\command]@="cmd /c set arg1=%1 & \"C:\\Data1\\ExpManageTool\\handle_file.bat\" %%arg1%%"浏览器打开任意可执行exe文件方法(浏览器任意链接在哪里)

EMTool3 为协议名称,C:\\Data1\\ExpManageTool\\handle_file.bat 为执行的bat脚本的位置。

双击reg文件,即可执行注册该URL协议。

编写bat脚本@echo offSetlocal enableDelayedExpansionecho url: [%arg1%]set m=%arg1%rem 将url编码改为正常格式set m=%m:EMTool3://=%set m=%m:separator=&%set m=!m:%%5C=/!rem 取第一个字符set mode=%m:~0,1%rem 去除第一个字符得到路径set m=%m:~1%echo mode: [%mode%]echo path: [%m%]if "%mode%"=="1" (echo open exe [%m%]goto openExeecho done)pause:openExerem 实际运行程序的地址在这里配置 %m% 是参数echo exec: %m%start "" %m%rem Setlocal enableDelayedExpansionrem pausegoto :eof

这里将协议后的第一个字符作为参数,字符 1 表示打开该可执行文件,有需要可以自己在脚本上添加其他功能。

bat编写完成后,放在reg中的指定文件夹下即可。

测试使用测试URL协议

在浏览器地址输入 <协议名>://1<快捷方式绝对地址> ,1为我定义的打开可执行文件动作的参数,然后回车。

点击打开。

成功打开应用。

在前端中使用

在前端中,我们可以在 <input type="file>"> 打开一个文件后获取文件名,然后加上指定文件夹前缀,组成路径,然后使用 windows.open() 函数在新标签页打开该URL。我这里使用的是vue2+element-UI。

<input :id="scope.row.cName" type="file" hidden @change="fileChange(scope.row.cName)"> <el-button icon="el-icon-folder-opened" @click="selectExeFile(scope.row.cName)" /></input>fileChange(id) { const file = document.getElementById(id).files[0] let fileName = file.name if (fileName.endsWith('.exe')) { fileName = fileName.substring(0, fileName.indexOf('.exe')) } this.exeUrl = 'EMTool3://1C:\\Data1\\ExpManageTool\\exeList\\' + fileName + '.lnk' // URL构造 console.log(this.exeUrl) window.open(this.exeUrl, '_blank') // 新标签页打开URL}
本文链接地址:https://www.jiuchutong.com/zhishi/310152.html 转载请保留说明!

上一篇:首涂二十一套模板带后台会员中心苹果CMSv10响应式diy高级电影主题-OK源码破解(首涂24套)

下一篇:phpcms后台不能发布文章怎么办(phpcms怎么样)

  • 八年群混子经验分享,社群运营应该这样“玩”

    八年群混子经验分享,社群运营应该这样“玩”

  • vivoY77怎么反向充电(vivos7e怎么反向充电)

    vivoY77怎么反向充电(vivos7e怎么反向充电)

  • 华硕电池保护模式怎么关闭(华硕电池保护模式无法打开应用)

    华硕电池保护模式怎么关闭(华硕电池保护模式无法打开应用)

  • 魅族17pro是多少倍变焦的呢(魅族17pro是多少赫兹)

    魅族17pro是多少倍变焦的呢(魅族17pro是多少赫兹)

  • 剪映怎么上下两个视频(剪映怎么上下两个不一样视频)

    剪映怎么上下两个视频(剪映怎么上下两个不一样视频)

  • 苹果手机可以测量尺寸吗(苹果手机可以测体温吗)

    苹果手机可以测量尺寸吗(苹果手机可以测体温吗)

  • ipad下载显示未完成付款(ipad为什么下载了软件却显示未安装)

    ipad下载显示未完成付款(ipad为什么下载了软件却显示未安装)

  • 支付宝运动怎么不让好友看到(支付宝运动怎么看好友以前的运动记录)

    支付宝运动怎么不让好友看到(支付宝运动怎么看好友以前的运动记录)

  •   淘宝如何刷单(淘宝如何刷人气)

      淘宝如何刷单(淘宝如何刷人气)

  • 微信群超过100人不能扫码进群怎么办(微信群超过100人需要实名认证吗)

    微信群超过100人不能扫码进群怎么办(微信群超过100人需要实名认证吗)

  • 微信被投诉多长时间自动解(微信投诉多长时间会封号)

    微信被投诉多长时间自动解(微信投诉多长时间会封号)

  • 回收站是内存中的一块区域吗(回收站是内存中的一块存储空间)

    回收站是内存中的一块区域吗(回收站是内存中的一块存储空间)

  • itunes能备份app吗(itunes能备份app数据吗)

    itunes能备份app吗(itunes能备份app数据吗)

  • 百家号头像为什么审核通过不了(百家号头像为什么修改不了)

    百家号头像为什么审核通过不了(百家号头像为什么修改不了)

  • 小米解bl锁有什么坏处(小米解锁bl会怎么样)

    小米解bl锁有什么坏处(小米解锁bl会怎么样)

  • 小米2s支持什么卡(小米2s能用吗)

    小米2s支持什么卡(小米2s能用吗)

  • 手机反向充电怎么解决(手机反向充电怎么关闭不了)

    手机反向充电怎么解决(手机反向充电怎么关闭不了)

  • 苹果11有屏幕指纹吗(苹果11有屏幕指纹功能吗)

    苹果11有屏幕指纹吗(苹果11有屏幕指纹功能吗)

  • 苹果x怎么清灰(苹果x怎么清灰喇叭麦克风)

    苹果x怎么清灰(苹果x怎么清灰喇叭麦克风)

  • 乐橙设备密码在哪里(乐橙默认设备密码是多少)

    乐橙设备密码在哪里(乐橙默认设备密码是多少)

  • 李玫瑾微信公众号多少(李玫瑾微信公众号怎么关注)

    李玫瑾微信公众号多少(李玫瑾微信公众号怎么关注)

  • mate20pro指纹解锁在哪里(mate20pro指纹解锁不灵敏)

    mate20pro指纹解锁在哪里(mate20pro指纹解锁不灵敏)

  • 腾讯微云如何解除绑定(腾讯微云如何解压zip)

    腾讯微云如何解除绑定(腾讯微云如何解压zip)

  • 委托加工物资增值税纳税义务发生时间
  • 财产和行为税合并申报
  • 去年工资计提错误,今年如何修改
  • 主营业务成本大于生产成本
  • 生产领用周转材料
  • 销售购物取得的收入
  • 个人转款到对公账户会计分录
  • 税收滞纳金可以免除吗
  • 税局代开专票如何做账务处理?
  • 盈余公积可用于集体福利吗
  • 律师事务所计提准备金的标准
  • 留抵进项税抵欠税后期末未交增值税会减少吗
  • 代扣代缴个人所得税计入哪个科目
  • 个人独资企业的所得税税率
  • 领购发票实名认证流程
  • 小微企业免征增值税条件
  • 合作社开具的免税普票计算抵扣
  • 企业向国有银行贷款的利率
  • 累计折旧要结转到本年利润吗
  • 残疾人保障金人数
  • 固定资产平均年限法公式
  • 戴尔笔记本电脑哪款性价比最高
  • 月末是指
  • 什么情况转账会延迟2天
  • 回来报销差旅费的会计分录怎么写
  • 关于员工被辞退经济赔偿
  • regsvr32 shmedia.dll
  • 个体工商户与家庭生活难以划分的费用
  • 马拉喀什的历史背景
  • 安斯海滩上的角眼沙蟹,塞舌尔普拉兰岛 (© Ingo Schulz/Offset by Shutterstock)
  • 生产成本二级科目会计分录
  • 财政专户资金是专项资金吗
  • elementui input无法输入
  • php递归算法1加到100
  • 个税申报结果查询
  • 金融企业的代理业务
  • 公司注册资金减资要交税吗
  • 小企业的流动资产
  • 税控盘增值税发票怎么开
  • 小规模纳税人去年免税,红冲后今年开多少税率的发票
  • 企业的固定资产因自然灾害产生的净损失计入
  • 成本核算步骤
  • 未开票收入缴纳增值税吗
  • 发票领购簿用完了怎么领取
  • mysql连接数据库的基本步骤是什么
  • 金税卡就是税控盘吗
  • 幼儿园的经费支出主要包括哪几个方面
  • 农产品税率2020年计算
  • 收到增值税发票月饼
  • 年末计提企业所得税的依据
  • 暂估入库后发票来不了
  • 其他综合收益的二级科目有哪些
  • 长期借款的账务处理会计分录
  • 汇算清缴弥补以前年度亏损多少年
  • 贸易公司的经营模式
  • 收到投资款如何做税务登记
  • 可抵扣的税票
  • 主营业务收入多栏式明细账怎么登
  • 期间费用率怎么算
  • windows vista界面
  • linux怎么禁用防火墙
  • windows xp的设备管理器在哪
  • centos双网卡配置
  • 介绍两个很常用的成语
  • windows8怎么新建word文档
  • w10升级失败怎么办
  • Mtdacq.exe - Mtdacq是什么进程 有什么用
  • 如何关闭win10自动升级win11
  • linux批量ping
  • 深入领悟六个必须坚持
  • node.js教学
  • web开发css
  • socket怎么用
  • javascript 操作css
  • python中的字符串可变吗
  • javaScript parseInt字符转化为数字函数使用小结
  • python shutil
  • 票种核定和税种核定的区别
  • 江西省税务局拟录用人员公示
  • 合格的税务人
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设