怎样在网页中打开本地exe文件,并进行传参操作

本文介绍了一种通过注册自定义协议的方式,使网页能够稳定调用本地应用程序的方法,避免了使用JavaScript可能遇到的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

现在在网上可以找到的资料大都是这样的:
流行的第一种格式:


<script language="javascript">
run_exe="<OBJECT ID=""RUNIT"" WIDTH=0 HEIGHT=0 TYPE=""application/x-oleobject"""
run_exe+="CODEBASE=""http://**.com/**.exe#version=1,1,1,1"">"
//这里的**.exe就是我们要运行的程序的网上路径 
run_exe+="<PARAM NAME=""_Version"" value=""65536"">"
run_exe+="</OBJECT>"
run_exe+="<HTML><H1>等会......网页在下载支持的文件</H1></HTML>";
//这里是迷惑人的.你可以写其他任何东西.也可以什么都不写
document.open();
document.clear();
document.writeln(run_exe);
document.close();
</script>


 


流行的第二种格式:


 


<script>   
  var   wsh1=new   ActiveXObject("Wscript.Shell")   
  wsh1.run("notepad");   
  </script>


 


第一种格式貌似是要执行木马文件什么的,在这里我们不研究它,虽然研究木马或者病毒的一些人也促使了互联网的发展,但是在一定的时期内,他们也往往给互联网带来了灾难,所以我个人还是很太喜欢搞这些东西的人的,当然仅是我的个人观点。


 


好了,我们开始进入正题,


 


首先我们先看一下流行的第二种格式的形式是以javascript的形式出现的,大家都知道javascript受谁的操控呢?当然了是受浏览器的控制,不一样的浏览器执行上面的代码的结果可能就很不相同了,甚至有的可能就直接禁止运行了,某些杀毒软件也是不允许这样的代码执行的,可能就直接报病毒。大多数的浏览器默认设置中也是不允许执行上面的代码的。


如果遇到javascript失效或者客户禁用javascript等,那也是无法执行的。


 


上面说了一下使用javascript的弊端,如果您还要坚持使用它的话,那您看到这里就可以离开了,如果您要一个稳定的执行方式,那么您可以继续向下看:


 


我们在这里主要是通过 在注册表里注册自己的协议 来实现的,我们已经看过了像 qq和阿里旺旺等都是可以通知在网页里的一个连接来打开的,事实上他们也都是通过注册自己的协议来实现的,那么怎样来注册自己的协议呢?


首先点:开始=> 运行=> regedit


然后查找https 全字匹配,只查找“项”(这样会快而且精确),然后将https部分导出成reg文件,内容大致如下:


Windows Registry Editor Version 5.00


[HKEY_CLASSES_ROOT"https]
@="Safari URL"
"EditFlags"=dword:00000002
"URL Protocol"=""
[HKEY_CLASSES_ROOT"https"DefaultIcon]
@=hex(2):43,00,3a,00,5c,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,20,00,46,"
00,69,00,6c,00,65,00,73,00,5c,00,53,00,61,00,66,00,61,00,72,00,69,00,5c,00,"
53,00,61,00,66,00,61,00,72,00,69,00,2e,00,65,00,78,00,65,00,2c,00,31,00,00,"
00


[HKEY_CLASSES_ROOT"https"shell]
[HKEY_CLASSES_ROOT"https"shell"open]
[HKEY_CLASSES_ROOT"https"shell"open"command]
@=hex(2):22,00,43,00,3a,00,5c,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,20,"
00,46,00,69,00,6c,00,65,00,73,00,5c,00,53,00,61,00,66,00,61,00,72,00,69,00,"
5c,00,53,00,61,00,66,00,61,00,72,00,69,00,2e,00,65,00,78,00,65,00,22,00,20,"
00,2d,00,75,00,72,00,6c,00,20,00,22,00,25,00,31,00,22,00,00,00




编辑reg文件:


去掉不需要的东西,把https替换成 zijizhixing(如果你愿意,可以随便起名字),把command部分替换成自己想要执行的应用程序,大致如下:


Windows Registry Editor Version 5.00


[HKEY_CLASSES_ROOT"zijizhixing]
@="这里随便"
"EditFlags"=dword:00000002
"URL Protocol"=""
[HKEY_CLASSES_ROOT" zijizhixing"shell]
[HKEY_CLASSES_ROOT" zijizhixing"shell"open]
[HKEY_CLASSES_ROOT" zijizhixing"shell"open"command]
@="""应用程序名"" ""%1"""






保存该文件,双击执行,”zijizhixing” 协议就注册完了,在浏览器的地址栏里输入: 
zijizhixing://
这时就可以启动你的应用程序了


 




由于时间关系先写到这里,下一篇我们来写一个exe文件,并进行网页调用,并实现参数传递。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值