本意是想按一个按钮
以启动一个服务器上的bitcomet.exe自动做种现在以System用户启动bitcomet.exe进行也没有用
后来改成代码如下
Process process = new Process();
//process.StartInfo.FileName = BitCometFileName;
//process.StartInfo.Arguments=args;
//process.StartInfo.Verb = String.Empty ;
//process.StartInfo.CreateNoWindow = false;
//process.StartInfo.WindowStyle = ProcessWindowStyle.Normal;
//process.StartInfo.UseShellExecute = true;
process.StartInfo.FileName = "cmd.exe";
process.StartInfo.Arguments ="/k ";
return process.Start();任务管理器的进程中都能发现以System用户启动了一个cmd.exe进程,
但是就是不能显示,才发现原来是与桌面交互的问题怎么解决呢?怎么能让asp.net web application与服务器实现桌面交互?
写个服务? asp.net web application==>windows service==>windows application?
                

解决方案 »

  1.   

    通过asp.net启动进程肯定是不行的.
    我有个思路,但没有试过.lz可试一下.写个winform程序.winform程序通过手工运行.asp.net通过socket也好,发消息也好.其他方式也好.总之通知winform程序.然后winform程序启动bitcomet.因为winform是桌面上运行启来的,他调用的程序应该会有界面.
      

  2.   

    to:cpp2017(幕白兄) 
    因为是在服务器上
    所以写winform,启动的时候是个麻烦
    看来你和我的想法是一致的了
    因为windows service是允许与桌面交互的,而且不用每次人工启动有没有哪儿有更简单的办法,我很懒的