如题,asp.net如何执行一个EXE文件??我是这样写的在一个BUTTON的ONCLICK里面System.Diagnostics.Process.Start("C:\\WINDOWS\\NOTEPAD.EXE")但页面就闪了一下,什么都没打开!如果我写错地址了,如:C:\\WIN\\NOTEPAD.EXE他会提示没找到这个文件,究竟怎么回事?我该如何写呢?

解决方案 »

  1.   

    这是网页....调的是你服务器里的C:\\WINDOWS\\NOTEPAD.EXE ,看看你服务器进程里是不是多了NOTEPAD.EXE 
    客户端是不会表现给你什么的没法写
      

  2.   

    activeX可以调用本机的
    直接像楼主这么写只能调用服务器上的
      

  3.   

    +1以前我想做在线格式转换的时候 想实现LZ的效果 可惜没实现 据说用ActiveX可以 不过我没做
      

  4.   

    ActiveX可以调用本机的?怎样实现啊?有具体代码吗?谢谢!
      

  5.   

    <P>
    <OBJECT
    id="Rpttest"
      classid="clsid:9DC648EF-9EC5-4A5B-9919-966C57B5A89B"
      codebase="http://USR/PrtTest/RptTestProj1.ocx#version=1,0,0,0"
      width=637
      height=271
      align=center
      hspace=0
      vspace=0
    >
     <param name=strSQL value="select * from Role">
     <param name=ConnString value="Provider=SQLOLEDB.1;Password=pwd;Persist Security Info=True;User ID=sa;Initial Catalog=lpms;Data Source=sql08l">
    </OBJECT>
      

  6.   

    RptTestProj1.ocx是自己写的activex
      

  7.   

    楼上大侠们说的很清楚了。
    asp.net   
    页面是在客户端电脑打开的,你写的Button代码是在服务器执行的。
    你开发的时候,客户端电脑和服务器都是你现在的本机,所以你在页面点了按钮,能打开本机的程序。但发布以后,客户端那样无非就是在服务器上打开一个应用程序,客户端没啥反应。甚至,如果服务器没有给执行程序的权限,还执行不了~(“闪了一下”可能就是因为你这个网站项目没有设置执行文件权限).
    要想执行客户端自己电脑的程序,ActiveX是一种方法。
      

  8.   

    还是不懂,ActiveX怎样才能打开程序?
      

  9.   

    就是执行 也是在服务器上的 client怎么能看见……
      

  10.   

    ActiveX  我一直也想接触 
    不知道怎么玩的
      

  11.   

    这个问题我曾经做过,首先说一点,的确像上面说的,用你的Process只是调服务器本机的一个EXE程序,当然,如果你的EXE如你的发布服务器是在同一计算机上,你给出对应的EXE地址,是可以打开对应的程序的,但如果你是想让用户在点这个BUTTON的时候去调这个EXE文件,确实是有难度的,我曾经试过用Active做过,的确,在本机测试的时候是没有问题的,只是报了一个关于ACTIVE权限的问题,我改了下,OK,能用了,但问题是,我一旦发布到服务器后,就不能用了,很简单了,这段JS是没有被执行成功的因为很简单,ACTIVE是有一定的危险性,如果你连客户端的任何文件都可以随意执行而不是先连接,那岂不是用户完全没有安全性可言
      

  12.   

    LZ该去看看asp.net的基本执行原理……