2012-08-31 49 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>

相關問題