Windows应用程序已停止工作

时间:2014-01-08 12:04:18

标签: c# crash windows-applications

我在客户端计算机上安装了C#windows应用程序。它运行正常,突然应用程序崩溃,当我检查异常时,我得到了以下细节:

  

描述:停止工作

<ProblemSignatures>
<EventType>CLR20r3</EventType>
<Parameter0>myapp.exe</parameter0>
<Parameter1>2.0.13</parameter0>
<Parameter2>529dadac</parameter0>
<Parameter3>mscorlib</parameter0>
<Parameter4>2.0.0.</parameter0>
<Parameter5>5174ddfb</parameter0>
<Parameter6>c43</parameter0>
<Parameter7>59</parameter0>
<Parameter8>System.FormatException</parameter0>

请提出宝贵的建议。

2 个答案:

答案 0 :(得分:1)

您获得的例外情况是: - System.FormatException 以下是对它的简要说明: -

  

当方法调用中的参数格式与相应的形式参数类型的格式不匹配时,抛出FormatException。例如,如果方法指定由两个带有嵌入句点的数字组成的String参数,则将仅包含两位数的相应字符串参数传递给该方法将导致抛出FormatException。   FormatException使用HRESULT COR_E_FORMAT,其值为0x80131537。

如果您有WinForm应用程序,请尝试在“Program.cs”文件中执行此操作:-(由viusual studio生成的文件的默认名称)

  try
  {
      Application.Run(new Form()) ; 
  }
  catch(Exception ex)
  {
     Log(ex) ; 
  }

  void Log(Exception ex)
  {
      string stackTrace = ex.StackTrace ; 
      File.WriteAllText(youFilePathHere, stackTrace) ; // path of file where stack trace will be stored.
  }

通过分析堆栈跟踪,您可以轻松了解您在应用程序中遇到的“运行时异常”。(确切的行号,方法名称等)。
希望它有所帮助!

答案 1 :(得分:0)

难以从中分析。

但是, 将null值转换为有意义的值时,将抛出此异常。

使用Convert函数,您可能尝试将null值转换为其他值。

您必须在代码中检查空值,然后检查assign it to 0或任何其他值作为便利。