2009-01-12 20 views
1

當我提交我的基本形式從HTML文件,它給了我的選項來保存EXE
我只是想運行EXE而不是。 (要重新填充模板html文件)
我需要做什麼才能在表單提交後運行該exe文件?表單提交要求保存EXE,希望它運行

<form action="Lib.exe" method=POST ID="Form1"> 
Enter Index to DELETE<br> 
<input type=text name="user" ID="Text1"> 
<input type=submit value="DELETE"> 
</form> 

我正在運行一個Web服務器。 html文件和.exe位於運行web文件的目錄中。

任何幫助表示讚賞。

謝謝。

回答

1

想通了。我沒有CGI應用程序中的內容類型。
「Content-type:text/html」
沒有這個,Web服務器將不會執行它。新手錯誤。多謝你們。

現在我的html文件運行在web服務器上,表單調用cgi-bin目錄下的exe文件並執行用戶指定的刪除操作。

我的下一個挑戰是搞清楚如何在瀏覽器中不實際顯示或轉到Lib.exe。我希望它能夠像現在這樣運行,但是保留在我的html頁面中,因爲它現在已經更新了。我不想手動返回到我的HTML頁面。

1

我假設lib.exe在服務器上更新模板,這意味着您需要配置您的Web服務器來運行exe文件,而不是將它們提供給用戶。你不指定運行服務器(不知何故,我假設你運行IIS ...),但是在Apache中你會使用<FilesMatch>httpd.conf添加一個處理程序exe文件,這樣的事情:

<FilesMatch \.cgi$> 
    SetHandler cgi-script 
</FilesMatch> 

但適應前男友。請參閱mod_mime documentation

1
  1. 請澄清一下您的問題。什麼是操作系統和網絡服務器,網絡服務器是否以有限的權限運行?
  2. 您可以將Lib.exe移植到您的網站(PHP或ASP或其他)使用的語言中嗎?
  3. 由於操作系統需要啓動新進程,爲新進程分配資源等,執行服務器端腳本作爲CGI的小任務可能會降低系統速度......編譯C++可能比通過加載模塊解釋的PHP慢。
1

您可以使用AJAX而不是表單提交併獲得相同的結果。