Javascript windows可执行文件[.exe]是如何从浏览器中启动的?

Javascript windows可执行文件[.exe]是如何从浏览器中启动的?,javascript,html,web-applications,executable,Javascript,Html,Web Applications,Executable,我不是说浏览器漏洞。我说的是在真正的公司中使用的真正的应用程序,比如和 基本上,你可以在他们的网站上点击“开始游戏”按钮,这将分别启动位于c:\ijji\english或c\nexon[gamename]的可执行文件。这些应用程序是真正的桌面应用程序,这意味着它们可以[以执行其他应用程序的形式]利用文件系统、direct3d和OS。应用程序也可以通过命令行启动[而不是访问游戏主机的网站] 我认为如果应用程序创建ActiveX对象来调用新进程的创建,这是可能的。然而,这些网站能够从Internet

我不是说浏览器漏洞。我说的是在真正的公司中使用的真正的应用程序,比如和

基本上,你可以在他们的网站上点击“开始游戏”按钮,这将分别启动位于c:\ijji\english或c\nexon[gamename]的可执行文件。这些应用程序是真正的桌面应用程序,这意味着它们可以[以执行其他应用程序的形式]利用文件系统、direct3d和OS。应用程序也可以通过命令行启动[而不是访问游戏主机的网站]

我认为如果应用程序创建ActiveX对象来调用新进程的创建,这是可能的。然而,这些网站能够从Internet Explorer以外的多个浏览器启动应用程序,包括chrome,据我所知,chrome不实现ActiveX

显然,开发这些应用程序的人使用他们自己的方法来实现这一点

通过查看服务列表以及当前正在运行的应用程序列表,我没有迹象表明它们正在运行类似“gameLaunchingServer.exe”的程序,该程序监听某个未知端口的传入连接[使用iframe-HTTP协议访问],并通过启动应用程序进行响应

我被难住了,这在我的脑海里有点根深蒂固。显然,他们没有使用一些随机的浏览器漏洞,否则http://www.[insertMaliciousWebsiteHere].com可能已经抓住了安装random crap的机会。不管怎样,它看起来很酷,我想知道它是如何工作的


只是好奇,呵呵

我没有完全找到您所说的按钮,但我认为它只有在您安装一次应用程序后才能工作,不是吗


在这种情况下,应用程序可能创建了自己的协议,就像skype、msn和一堆客户端一样。

我相信他们所做的是在安装时设置自己的协议处理程序-当浏览器被要求访问一个地址时,使用一个它不知道如何处理的协议(例如,一个steam://地址),它查看所有已安装的协议处理程序以找到匹配项


因此,您可以将您的应用程序注册为myApplication://协议处理程序,然后您的网页可以链接到myApplication://地址并启动您的应用程序。

拥有一个协议是最简单的方法(而且非常容易实现-一个简单的注册表项)


另一种使用方式是扩展或插件。

我以为它们是通过插件或类似小程序运行的

例如,SilverLight女士