2012-08-31 50 views
2

我需要通过单击html链接从本地用户的文件系统运行程序。通过html链接将参数传递给程序

当我使用这个

<a href="C:\Windows\System32\NETSTAT.EXE">CLICK</a> 

它工作正常。但是,当我尝试传递参数到exe文件失败。

<a href="C:\Windows\System32\NETSTAT.EXE -a">CLICK</a> 

任何人都有一个想法如何传递参数?

感谢

UPDATE

使用的,这是以下几点:一个在线系统发送电子邮件给用户,如果一个新的记录是在系统中可用。因此,用户将点击一个链接从他们的电子邮件客户端,将打开他们的本地EXE程序与所需的参数,以显示新的记录。

我不想发送带有bat文件的邮件,因为我的网络管理员不允许发送邮件。

回答

3

我看到只有一个解决方案,使用.BAT文件,其中将“netstat.exe -a”,例如命名为netstat-a.bat。

<a href="C:\Windows\System32\NETSTAT-A.BAT">CLICK</a> 

这是相当impertect的解决方案,但工程:)

你也可以试试这个代码,但它依靠的浏览器和用户权限:

<html> 
<head> 
    <script language="JavaScript" type="text/javascript"> 
     MyObject = new ActiveXObject("WScript.Shell") 
     function RunNotePad() 
     { 
      MyObject.Run("netstat.exe -a") ; 
     } 

    </script> 
</head> 
<body> 
    <h1>Run a Program</h1> 
    This script launch the file >> c:\windows\notepad.exe<p> 
    <button onclick="RunNotePad()">Run Windows NotePad</button> 
</body> 
</html> 
+0

是的,它的工作原理是这样的,但这不是我实际上需要。您看到程序安装在客户端上,并且通过电子邮件,我希望用户能够使用该参数运行程序。我不想通过电子邮件发送电子邮件文件...,让用户下载并运行它。 – MaVRoSCy

+0

uuu ...在这种情况下可以使用javascript代码,但代码的功能将取决于使用的浏览器/版本,用户权限......并且它不是从我的头:) – drobik

0

由于从我的角度来看如 <A>区分大小写,它会将C:\Windows\System32\NETSTAT.EXE -a视为整个路径而不是-a作为参数。 上面的链接工作,因为它也需要作为一个参数,它是有内部SYSTEM32那为什么它执行

同样是一种享受<a href="C:\Windows\System32\NETSTAT.EXE -a">CLICK</a>作为一个整体文件,该文件是不是有那么只有一种解决问题的化妆方法它作为.bat整个路径,并保存它,并给路径和保存netstat-a.bat或任何你想要在<a>并给出整个路径在<a>C:\Windows\System32\NETSTAT.EXE-a.bat</a>

相关问题