我在asp.net(webform) 启动了一个外部程序并且传递了参数。请问大家:被启动的程序怎样才能获取到参数呀?谢谢啦!
代码如下:             string arguments = 参数;        Process ps = new Process();
        ps.StartInfo.CreateNoWindow = false;
        ps.StartInfo.WorkingDirectory = ConfigurationManager.AppSettings["SendMailPath"];
        ps.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
        ps.StartInfo.Arguments = arguments;
        ps.StartInfo.FileName = "emailapp.exe";
        ps.StartInfo.UseShellExecute = true;
        ps.Start();

解决方案 »

  1.   

    开启的是什么程序呢?一般可通过Main(string[] args)来获得参数(多个参数以空格间隔)
      

  2.   

    主函数,一般在program.cs中public static void Main(string[] args),其中args就是命令行参数
      

  3.   

    调用WebService不能实现这个功能吗?
      

  4.   

    我用得winform窗体程序 发送邮件因为webform程序 邮件比较多时就会发送超时谢谢
      

  5.   

    ps.StartInfo.Arguments = arguments;
    这个就是传递参数用的。ps.StartInfo.Arguments = ”c:\abc.txt";
      ps.StartInfo.FileName = "notepad.exe";这就是命令记事本打开c盘的abc.txt文件。当然,你运行的账号要有足够权限才行。
      

  6.   

    原来你这个需求只是为了发邮件。
    发邮件有一命令是SendAsync(),异步发送。
    或者你可以设置页面的超时时间足够长。总不至于为了这点小坑就以降低服务器的安全性为代价。