0

ActiveX を使用してクライアントにインストールされた exe ファイルを実行するアプリケーション ページがありますが、IE でオプションが許可されている場合にのみコードが機能します - 「スクリプトを実行しても安全とマークされていない ActiveX コントロールを初期化してスクリプトを作成する」

 <script runat="server">
    protected void Page_Load(object sender, EventArgs e)
    {
        string url = Context.Request.Url.ToString();
        ClientScript.RegisterStartupScript(GetType(), "key", string.Format(@"RunEXE('{0}');", url), true);
        ClientScript.RegisterStartupScript(GetType(), "redir", string.Format(@"Redir('{0}');", Request.QueryString["Source"]), true);
    }
</script>
<asp:Content ID="Main" runat="server" contentplaceholderid="PlaceHolderMain" >
  <script language="javascript" type="text/javascript" >

      function RunEXE(url) 
      {
          var oShell = new ActiveXObject("Shell.Application");
          oShell.ShellExecute('C:/inetpub/wwwroot/SPMananager.exe', url, "", "open", 1);
      }

      function Redir(url) 
      {
          window.location = url;
      }  
</script>
</asp:Content>
4

1 に答える 1

0

Shell.Application簡単に悪用される可能性があるため、「スクリプトに対して安全」とはマークされていません。

Windowsのインストールを中断する可能性のあるWebサイトにアクセスしたくない。

于 2012-04-24T08:10:19.087 に答える