我用visual studio 2010 写了一个网站,在Page_Load时,用下面的方式打开一个本地的exe文件
System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo.FileNmae = "C:\\a.exe";
process.StartInfo.CreateNoWindow = true;
process.Start();
直接在vs上运行的时候没问题。
System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo.FileNmae = "C:\\a.exe";
process.StartInfo.CreateNoWindow = true;
process.Start();
直接在vs上运行的时候没问题。
当我配置到IIS6.0上以后,运行网页,发现a.exe的程序进程能在任务管理器中发现,但是只是一个进程,a.exe的功能却没有了。
分析1:a.exe应该仅处理文件输入输出,不要有任何交互动作(cin,cout,scanf,printf,OnButton,OnMouse,......)
或者将a.exe挪到网站文件对应目录下
分析2:VS运行的时候是以管理员账户运行的。
在IIS上的配置的网站上右键 -> 属性 -> 主目录 -> 执行权限 -> 选择执行和可执行文件。