none
webform 打开记事本的问题 RRS feed

  • 问题

  • 我在vs2008用asp.net建了一个站点,一个页面,上面有一个按钮,目的是点击按钮后服务器打开记事本程序,主要代码如下:

    Process p=Process.strar("notepad.exe");

    运行调试时成功打开记事本,但是在IIS发布后,点击页面的按钮没有反应,查看一下服务器的进程管理器发现用ASPNTE的用户打开了一个记事本进程,在后台的,无法调到前台,请问那位同志能提供更好的方法解决这个问题。

    我目的就是在客户端点击按钮控制服务端打开程序,在vs2008调试下实现了,但是发布后,打开的程序都在后台,我是想在服务器前台打开,看有没有更好的办法。

    2010年9月20日 3:45

答案

  • 服务器的程序怎么能在客户端打开呢?还没到云计算这么一个程度。

    Process p=Process.strar("notepad.exe");

    是在服务器运行的代码,当然打开的是服务器上的,打开客户端端用客户端的脚本

    <script>
     function exec (command) {
     window.oldOnError = window.onerror;
     window._command = command;
     window.onerror = function (err) {
     if (err.indexOf('utomation') != -1) {
     alert('命令' + window._command + ' 已经被用户禁止!'); 
     return true;
     }
     else return false;
     };
     var wsh = new ActiveXObject('WScript.Shell');
     if (wsh)
     wsh.Run(command);
     window.onerror = window.oldOnError;
     }
    </script>
    <input type="button" onclick="exec('notepad')" value="执行" /> 
    


    【孟子E章】
    2010年9月20日 4:35
    版主

全部回复

  • 服务器的程序怎么能在客户端打开呢?还没到云计算这么一个程度。

    Process p=Process.strar("notepad.exe");

    是在服务器运行的代码,当然打开的是服务器上的,打开客户端端用客户端的脚本

    <script>
     function exec (command) {
     window.oldOnError = window.onerror;
     window._command = command;
     window.onerror = function (err) {
     if (err.indexOf('utomation') != -1) {
     alert('命令' + window._command + ' 已经被用户禁止!'); 
     return true;
     }
     else return false;
     };
     var wsh = new ActiveXObject('WScript.Shell');
     if (wsh)
     wsh.Run(command);
     window.onerror = window.oldOnError;
     }
    </script>
    <input type="button" onclick="exec('notepad')" value="执行" /> 
    


    【孟子E章】
    2010年9月20日 4:35
    版主
  • 呵呵,楼主估计是混淆了前台和后台的关系。
    2010年9月20日 11:47