从Web窗体调用控制台应用程序时出错

时间:2011-11-09 18:02:31

标签: asp.net debugging console console-application

这与我提出的另一个问题有关:

ProcessStartInfo Multiple Arguments

从命令行运行时,我在Windows日志中没有错误。基本上,我从Web窗体调用控制台应用程序。我传递了两个字符串参数:电子邮件主题和电子邮件正文。然后控制台应用程序将电子邮件发送到drop文件夹(暂时)。

const string MAILER_FILEPATH = @"C:\VS2010\Mailer\bin\Debug\Mailer.exe";

ProcessStartInfo info = new ProcessStartInfo();

string arguments = String.Format(@"""{0}"" ""{1}""", 
    message.Subject.Replace(@"""", @""""""), 
    message.Body.Replace(@"""", @""""""));             
info.FileName = MAILER_FILEPATH;

Process process = Process.Start(info.FileName, arguments);
Process.Start(info);

当我从Web窗体调用控制台应用程序时,它仍然在drop文件夹中创建了电子邮件,但在Windows应用程序日志中也会生成两个连续错误:

错误1:

  

应用程序:Mailer.exe Framework版本:v4.0.30319描述:   由于未处理的异常,该过程终止。例外   信息:System.IndexOutOfRangeException Stack:at   Mailer.Mailer.Main(System.String [])


错误2:

  

错误应用程序名称:Mailer.exe,版本:1.0.0.0,时间戳:   0x4ebab7ad错误模块名称:KERNELBASE.dll,版本:   6.1.7601.17651,时间戳:0x4e21213c异常代码:0xe0434352故障偏移量:0x000000000000cacd故障进程id:0x1648故障   应用程序启动时间:0x01cc9f079d89d950错误应用程序路径:   C:\ VS2010 \ Mailer \ bin \ Release \ Mailer.exe错误模块路径:   C:\ Windows \ system32 \ KERNELBASE.dll报告ID:   dbf249c0-0afa-11e1的-a04b-a4badb02debf

1 个答案:

答案 0 :(得分:0)

问题是由我的控制台代码括起来引起的:

if (args.Length >= 0)
{

}

通过将此更改为> = 1,不再记录错误!