我想通过HTML文件中的链接打开一个exe文件。
这可行吗?如果可以,应该如何实现?
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\ACCapp]
@="URL:ACCapp Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\ACCapp\shell]
[HKEY_CLASSES_ROOT\ACCapp\shell\open]
[HKEY_CLASSES_ROOT\ACCapp\shell\open\command]
@="msaccess.exe"
<a href="ACCapp://">PLEASE RUN MS Access exe file</a>
用户不能直接在本地计算机或通过网站启动/执行所在的 .exe 文件。必须先下载 exe 文件,然后运行可执行文件。
出于安全原因,这是不可能的,而且最好保持现状。
下面的代码可以工作,但只能在程序所在的机器上运行:
<a href = "c:\Myfolder\Myprogram.exe">
您可以这样做
这是我唯一能想到的方法:
<html>
<head>
<title>Open exe</title>
<script type="text/javascript">
function runProgram()
{
var shell = new ActiveXObject("WScript.Shell");
var appITunes = "\"C:\\Program Files\\iTunes\\iTunes.exe\" ";
shell.Run(appITunes);
}
</script>
</head>
<body>
<a href="javascript:runProgram()">Run program</a>
</body>
</html>
<a href="webrun:C:\Windows\notepad.exe">Notepad</a>
您可以编写一个仅在Internet Explorer中运行的Active-X对象。
虽然不是exe文件,但这是最接近运行exe文件的方法。
在工作中,我使用PC(遗憾的是,我是MAC迷)和Firefox。对我而言,在Firefox中有效的代码,以及仅在内部有效的链接是<a href = "file:///c:/Myfolder/Myprogram.exe">
。
并且它仅在您右键单击链接并选择在外部应用程序中打开链接时才有效。仅单击链接本身会提示用户保存.exe文件,然后运行它。
我无法让它在IE或Firefox中只使用<a href = "c:/Myfolder/Myprogram.exe">
就能够正常工作。
为什么不使用CGI来实现这个目的,CGI实际上是通过服务器上的浏览器运行可执行文件。