首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

怎么获取线程传递的参数

2012-07-28 
如何获取线程传递的参数我在asp.net(webform) 启动了一个外部程序并且传递了参数。请问大家:被启动的程序怎

如何获取线程传递的参数
我在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();




[解决办法]
开启的是什么程序呢?一般可通过Main(string[] args)来获得参数(多个参数以空格间隔)
[解决办法]
主函数,一般在program.cs中

public static void Main(string[] args),其中args就是命令行参数
[解决办法]
调用WebService不能实现这个功能吗?
[解决办法]
ps.StartInfo.Arguments = arguments;
这个就是传递参数用的。

ps.StartInfo.Arguments = ”c:\abc.txt";
ps.StartInfo.FileName = "notepad.exe";

这就是命令记事本打开c盘的abc.txt文件。当然,你运行的账号要有足够权限才行。

[解决办法]
原来你这个需求只是为了发邮件。
发邮件有一命令是SendAsync(),异步发送。
或者你可以设置页面的超时时间足够长。

总不至于为了这点小坑就以降低服务器的安全性为代价。

热点排行