位置: 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怎么样)

  • 小米12尺寸长宽高(小米12多大屏幕)

    小米12尺寸长宽高(小米12多大屏幕)

  • apple watch省电模式怎么关(apple watch 省电)

    apple watch省电模式怎么关(apple watch 省电)

  • 小米10s打字声音在哪里关掉(小米10s打字声音怎么设置)

    小米10s打字声音在哪里关掉(小米10s打字声音怎么设置)

  • 红米10xpro有呼吸灯的吗(红米10pro有没有呼吸灯)

    红米10xpro有呼吸灯的吗(红米10pro有没有呼吸灯)

  • 常用bcd码有哪些(bcd码含义)

    常用bcd码有哪些(bcd码含义)

  • 红米手机有反应但屏幕不亮(红米手机有反应但屏幕黑屏舞)

    红米手机有反应但屏幕不亮(红米手机有反应但屏幕黑屏舞)

  • wpssmartart在哪里找(wps上的smartart在哪)

    wpssmartart在哪里找(wps上的smartart在哪)

  • 苹果电池优化要不要开(iphone 电池优化有用吗)

    苹果电池优化要不要开(iphone 电池优化有用吗)

  • 苹果手机有锁无锁是什么意思(苹果手机有锁无锁查询)

    苹果手机有锁无锁是什么意思(苹果手机有锁无锁查询)

  • 华为充电器接口有几种(华为充电器接口英文怎么读)

    华为充电器接口有几种(华为充电器接口英文怎么读)

  • 广角镜头和长焦镜头的区别(广角镜头和长焦镜头在创作上有什么作用)

    广角镜头和长焦镜头的区别(广角镜头和长焦镜头在创作上有什么作用)

  • 微信钱包在哪(企业微信钱包在哪)

    微信钱包在哪(企业微信钱包在哪)

  • iphone11和11pro手机壳通用吗(苹果iphone11与11pro)

    iphone11和11pro手机壳通用吗(苹果iphone11与11pro)

  • 陌陌互关多久能开视频(陌陌互关多久能上线)

    陌陌互关多久能开视频(陌陌互关多久能上线)

  • 中华古籍资源库怎么进(中华古籍资源库怎么下载古籍)

    中华古籍资源库怎么进(中华古籍资源库怎么下载古籍)

  • 咪咕超级会员怎么登录(咪咕超级会员怎么取消)

    咪咕超级会员怎么登录(咪咕超级会员怎么取消)

  • 华为tdlte是什么机型(td_lte什么型号手机华为)

    华为tdlte是什么机型(td_lte什么型号手机华为)

  • iphone 11是双卡的吗(iphone 11是双卡的还是单卡的)

    iphone 11是双卡的吗(iphone 11是双卡的还是单卡的)

  • 小米手机发烫如何处理(小米手机发烫如何降温)

    小米手机发烫如何处理(小米手机发烫如何降温)

  • 苹果xr的a12是否降了频(苹果xr的a12芯片有缩水吗)

    苹果xr的a12是否降了频(苹果xr的a12芯片有缩水吗)

  • 小米8se是什么接口(小米8se是啥)

    小米8se是什么接口(小米8se是啥)

  • 计算机输出设备有哪些(计算机输出设备的一组是)

    计算机输出设备有哪些(计算机输出设备的一组是)

  • 怎么在手机屏幕上显示文字(怎么在手机屏幕上显示时间和天气)

    怎么在手机屏幕上显示文字(怎么在手机屏幕上显示时间和天气)

  • 5v2a是快充吗(5v1a是快充吗)

    5v2a是快充吗(5v1a是快充吗)

  • 怎么把快手喜欢的清零(怎么把快手喜欢打开)

    怎么把快手喜欢的清零(怎么把快手喜欢打开)

  • AI 工具大全(AI工具大全)

    AI 工具大全(AI工具大全)

  • 什么是税目税基税率,简答题
  • 应交税费是什么类
  • 物业公司车棚算固定资产吗
  • 运输途中的合理损耗
  • 应发工资包含请年假吗
  • 资产负债表季报本月数怎么填
  • 备用金可以不要发票吗
  • 小规模纳税人减征增值税
  • 小企业会计准则会计科目表
  • 非居民企业股权转让所得税
  • 会计利润包不包括营业外支出
  • 他人购买股权个人所得缴纳个人所得税率是多少?
  • 工程收到收据没有发票的会计分录怎么做?
  • 应收账款多收的钱怎么写分录
  • 土地划拨需要缴纳增值税
  • 进项税发票认证流程
  • 税收楔子是什么意思
  • 增值税进项税抵扣规定
  • 出口退税网上申报视频
  • 营业部门人员工资用什么会计科目
  • 一般纳税人免税申报表怎么填
  • 享受小型微利企业标准
  • 怎么利用腾讯手机号找人
  • 开办费计入长期待摊费用汇算清缴时怎么填写
  • 显示器屏幕抖动闪烁是什么原因
  • 证券的投资
  • 出库单可以补吗
  • 该内存不能为read怎么解决?win+r弹不出来也不好使
  • windows7安装nodejs14
  • php的缓存文件是什么格式
  • pyecharts绘制柱状图动态图
  • vue中使用swiper6
  • 应收账款占用资金的应计利息变动额
  • 购入多项固定资产
  • php自带的加密解密函数
  • 会计劳保用品有哪些东西呢
  • Apache PHP MySql安装配置图文教程
  • 车船税每年都要付吗
  • 员工办理健康证需要什么材料
  • 行政事业单位福利费列支范围及标准2023
  • 工会的钱怎么取出来
  • tempdb数据库能删么
  • 交通运输企业会计科目
  • 控股子公司破产清算 母公司需审计
  • 发票验旧验的是哪些发票
  • 纳税人应按照当期可抵扣进项税额的10%
  • 企业向个人租房发票怎么开
  • 未入账分期金额要还吗
  • 利息收入算什么
  • 健身器材折旧年限及计提办法
  • 国有资产保值增值率
  • 员工意外险税前扣除比例
  • 增值税进项税额抵扣期限最新
  • 招待客户住宿属于什么费用
  • 借长期借款贷在建工程
  • 毛利润包括什么
  • 设备基础属于什么基础
  • 交易性金融资产公允价值变动计入
  • MySQL存储过程和函数有什么区别?
  • mysql查看使用情况
  • mysql安装教程5.5安装好了在哪使用
  • centos7如何修改用户名
  • 魔方u怎么弄
  • wincomm.exe - wincomm是什么进程
  • ·exe病毒
  • win10wifi总是掉线
  • 获取windows的最新信息
  • nodejs引入模块
  • ubuntu列出用户
  • css常用布局方式
  • shell中判断文件是否存在
  • unity 1
  • python验证整数
  • shaders initialized
  • js面向接口编程
  • 税务认证系统如何操作
  • 贵州新农合可以打电话停保吗
  • 小程序河南税务局
  • 多计提的税金如何处理
  • 发票校验码不清楚
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设