簡體   English   中英

如何從我的應用程序@Client端打開命令提示符

[英]How to open command prompt from my application @Client side

請幫助我如何從客戶端打開命令提示符。 當我單擊按鈕時,它應該打開命令提示符。 我在PC上嘗試過,它在開發環境中正常工作,但是在IIS中部署時無法打開。

碼:

    var Processstartinfo = new ProcessStartInfo
    {           
        FileName = "cmd"
    };
    Process process = Process.Start(Processstartinfo);

asp.net在服務器上運行。 我懷疑您是在卡西尼本地運行的,因此您的服務器桌面和客戶端桌面是同一件事。 您正在做的是在服務器上打開命令提示符; 如果您考慮一下的話,這是一個有趣的DDOS攻擊面(即不要這樣做)。

簡短的答案:您不能這樣做 沒有瀏覽器會(或應該...我將為IE允許; p)允許這樣做。 客戶端OS甚至不需要支持命令提示符,也不需要.NET。 即使這樣做,也很少有瀏覽器可以讓您產生一個進程。

您需要創建一個偽造的命令提示符才能執行此操作。 就像Marc所說的那樣,它帶來了巨大的安全風險,而我絕不會這樣做。

要解決此問題,您需要重定向標准輸入/輸出,以便可以對其進行讀取/寫入。 這是一個例子 創建命令流程,然后將Process對象保存在會話變量中。

在客戶端添加<div id="commandOutput"></div><input type="text" name="command" /><input type="submit" value="Execute command" /> 使用jquery或類似的方法來鈎住按鈕單擊事件。

使用ajax提交表單。 通過將命令寫入保存在會話變量中的Process對象中的stdin來執行命令。 從標准輸出讀取並將結果返回給客戶端,該客戶端使用jQuery或其他方式將其添加到commandOutput div中。

那應該做。 請注意,具有訪問權限的任何人都可以對您的服務器執行任何操作

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM