很多朋友对于如何在浏览器中启动Exe文件?和不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!
有没有办法在不改变浏览器安全性的情况下从浏览器执行Exe 文件?
先看个效果
全部源码
1. 准备一个C# 控制台应用程序,使用Nancy 框架创建一个简单的Web 服务,并在控制台中监听用户输入。
Nancy 是一个轻量级、简单的框架,用于在.NET Framework/Core 和Mono 上跨平台构建基于HTTP 的服务。
Nancy 旨在处理DELETE 、 GET 、 HEAD 、 OPTIONS 、 POST 、 PUT 请求,并提供简单、优雅的域特定语言(DSL),只需按几下按键即可返回响应。
public static void Main(string[] args){ Console.WriteLine(‘网络服务已启动!’);使用(NancyHost 主机=new NancyHost(new Uri(‘http://localhost:12345’))) { host.Start(); while ( true) { if (Console.KeyAvailable Console.ReadKey().Key==ConsoleKey.Enter) 中断;系统.Threading.Thread.Sleep(100); } }}2.准备Nancy 模块来处理请求。
public class Module : NancyModule{ public Module() : base(‘/dhub’) { //处理requestBefore 之前执行的操作+=nancyContext={ Console.WriteLine(DateTime.Now.ToString() + ‘ ‘ + Request .Url );返回空值; }; //处理GET 请求,路径为/dhub/home Get[‘/home’]=parameters={ return ‘meta charset=\’UTF-8\’DHub Demo /br/br ‘ + ‘input type=\’按钮\’ onclick=\’location.href=’http://localhost:12345/dhub/open?exe=pingip=127.0.0.1′; \’ value=\’打开命令ping 10.14.21.1(路由器)\’ /’ + ‘/br/br’ + ‘输入类型=\’按钮\’ onclick=\’location.href=’http://localhost:12345/dhub/open ?exe=explorerip=127.0.0.1′; \’ value=\ ‘打开资源管理器127.0.0.1\’ /’ + ‘/br/br’ + ‘输入类型=\’按钮\’ onclick=\’location.href=’http://localhost:12345/dhub/open?exe=vncviewerip=127.0。 0.1’; \’ value=\’打开vncviewer 127.0.0.1)\’ /’; }; //处理GET请求,路径为/dhub/open Get[‘/open’]=parameters={ string exe=Request.查询[‘exe’];字符串ip=Request.Query[‘ip’]; Console.WriteLine(‘exe={0} ip={1} ‘, exe, ip); if (exe !=null ip !=null) { if (exe.ToLower()==’explorer’) Process.Start(string.Format(@’\\{0}\share’, ip)); if (exe.ToLower()==’vncviewer ‘) Process.Start(Path.Combine(Environment.Is64BitProcess ? ‘x64’ : ‘x86’, ‘vncviewer.exe’), string.Format(‘{0} -password密码’,ip)); if (exe.ToLower()==’ping’) Process.Start(@’ping’, string.Format(‘-t {0}’, ip)); } //返回消息并重定向到/dhub/home 页面return ‘ open/brscript language=\’javascript\’ window.location.href=\’http://localhost:12345/dhub/home\’/script’; }; }} 3.启动项目
注意:必须有管理员权限才能启动Visual Studio,否则会弹出以下错误。
正常启动如下:
4、打开浏览器,输入地址:http://localhost:12345/dhub/home
执行ping
http://ocalhost:12345/dhub/open?exe=pingip=127.0.0.1
打开资源管理器
http://localhost:12345/dhub/open?exe=explorerip=127.0.0.1
打开任意exe:vncviewer
http://localhost:12345/dhub/open?exe=vncviewerip=127.0.0.1
原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/194051.html
用户评论
幸好是你
这篇文章太棒了!我一直都想过怎么能在浏览器里运行 exe 文件,我试过了你说的方法,真成功了!不过我觉得安全问题还挺重要的,还是需要注意下.
有6位网友表示赞同!
命该如此
真的有用啊!感谢分享,我现在可以在不用下载额外的软件的情况下直接在我浏览器里打开exe文件,太方便啦!
有7位网友表示赞同!
君临臣
这么做其实很危险吧?运行未知文件的风险很大,你确定这种方法安全吗?
有10位网友表示赞同!
坠入深海i
我有点不太理解这个操作的原理,你能不能详细解释一下为什么浏览器可以执行 exe 文件呢?
有12位网友表示赞同!
旧爱剩女
我觉得这样比较局限性比较大吧,不能解决所有exe文件启动的问题。还有很多软件都需要特别的解压方式或者安装步骤吧?
有13位网友表示赞同!
各自安好ぃ
我试试这方法,但运行速度好像比用传统的打开方式要慢一些?难道是我电脑配置太低了?
有11位网友表示赞同!
聽風
这篇教程应该加上哪些安全提示呢?万一不小心下载到害人的文件怎么办? 我觉得还是要多注意一下!
有13位网友表示赞同!
残留の笑颜
哈哈,其实浏览器已经内置了一些类似功能,比如 Chrome 的“Android app”功能。 不过它只能运行特定的应用吧!
有6位网友表示赞同!
像从了良
我一直在寻找一个方法,可以在线直接查看一些exe软件的功能界面, 不用下载安装,你的方法可以实现吗?
有7位网友表示赞同!
tina
我觉得这种方法更适合于处理一些小型程序文件,像大型软件还是需要传统安装方式吧?
有19位网友表示赞同!
堕落爱人!
真是个让人眼前一亮的技巧!以后就可以在不切换窗口的情况下直接执行代码了,太方便啦!
有17位网友表示赞同!
有阳光还感觉冷
我试了一下浏览器启动exe文件的功能,感觉不太好用啊!操作比较麻烦,而且速度也不快!
有13位网友表示赞同!
闲肆
我觉得这种方法还是存在一定风险的,毕竟运行exe文件最终还是要到机器的本机层面上,如果被恶意软件攻击后果很严重吧?
有20位网友表示赞同!
熟悉看不清
你说的这个方法,可以用在远程桌面连接程序上吗?我很想要在不需要安装软件的情况下直接操作远程电脑上的exe文件!
有11位网友表示赞同!
灼痛
对于一些开源软件来说,直接在浏览器中启动执行可能更安全和方便。这样可以避免一些潜在的感染风险!
有14位网友表示赞同!
怪咖
这种方法有没有考虑过安全性问题?万一运行恶意文件怎么办?我觉得应该加上一些防护机制!
有16位网友表示赞同!
心亡则人忘
虽然很有用,但是这种方法是不是需要一些特定的软件支持啊?比如浏览器插件等等?
有7位网友表示赞同!
怀念·最初
你说的这个方法听起来很酷,希望能看到未来浏览器可以直接运行各种类型的程序了!
有15位网友表示赞同!