2011-02-26 54 views
4

我有一個頁面可以讓我控制本地網絡中的一些設備。但是,某些高級設置只能使用位於運行配置頁的計算機上的.exe文件進行設置。我想將所有的配置工具「集中到一個地方」,所以最好有一種鏈接/塊/按鈕/ flash動畫/任何 - 在被用戶點擊之後 - 會運行指定的.exe文件。我認爲這是可能的,因爲我看過使用網頁發佈的MMO遊戲。我也懷疑HTML/JavaScript不會讓我做這樣的事情,所以也許答案是Flash?希望你會有一些想法。從瀏覽器運行.exe文件(以任何方式)

非常感謝您提供任何線索, Michael。

回答

2

File URI的鏈接可能會訣竅。你嘗試過嗎?

0

在客戶端上運行exe是不可能的,否則就是安全漏洞。
雖然你可以通過CGI在windows服務器上運行exe。

+1

這似乎是不正確的,它**當然是一種安全風險,但它也可以通過file-URI和/或其他選項中的ActiveX來實現。 – 2011-02-26 13:50:51

2

有辦法做到這一點,但這是一個安全風險,所以你不能沒有用戶的具體許可做到這一點。如果在IE上,你可以用activeX做到這一點,如果在另一個瀏覽器上它更復雜 - 你可能需要安裝一個特殊的插件或DLL。

一個簡單的選擇是將程序註冊爲特定類型URI的處理程序。如果您曾經在網絡上看過itunes://鏈接,如果您的電腦上安裝了iTunes,它將直接啓動iTunes。例如。這裏是對how itunes does it的解釋。其實這是如何阻止它的解釋,但你可以用它來建立你自己的系統來做同樣的事情。

完成此操作的另一個位置位於谷歌瀏覽器下載頁面上。如果您曾在您的(Windows)電腦上安裝過任何谷歌產品,谷歌也會安裝一個dll,只需點擊鏈接即可執行任何已簽署的谷歌產品。轉到谷歌瀏覽器下載頁面,你可以反轉javascript看看他們是怎麼做到的(最終是一個本地編譯的dll,儘管這允許他們這樣做),但安裝這個額外的軟件使它非常無縫,儘管有點令人不安。

所以你可以看到有很多種方法。

1

運行本地文件將需要能夠訪問本地計算機的網頁中嵌入的對象。這可以通過構建ActiveX控件或Java小程序來實現。對於公共網站等,這通常會皺起眉頭,但對於本地網絡或受控環境來說,這完全沒問題。

0

我通過鏈接到運行.exe本身的.bat文件。