Winforms.Net应用程序赢得';t启动

本文关键字:启动 Net 应用程序 Winforms | 更新日期: 2023-09-27 18:19:25

我有一个在大多数机器上运行的标准winforms应用程序。在安装了.Net 4(完整版)的2003服务器上,它不会运行。

事件查看器显示:

Event Type: Error
Event Source:   .NET Runtime
Event Category: None
Event ID:   1026
Date:       4/01/2012
Time:       10:07:37 AM
User:       N/A
Computer:   DRACO
Description:
Application: start.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception 
Info: System.TypeInitializationException
Stack:
   at BootStrap.Program.Main(System.String[])
Event Type: Error
Event Source:   .NET Runtime 4.0 Error Reporting
Event Category: None
Event ID:   1000
Date:       4/01/2012
Time:       10:07:34 AM
User:       N/A
Computer:   DRACO
Description:
Faulting application start.exe, version 1.0.4386.17553, stamp 4f0384f3, faulting module     kernel32.dll, version 5.2.3790.4480, stamp 49c51f0a, debug? 0, fault address 0x0000bef7.

它在Main()调用中失败,所以我无法捕获错误。我该如何判断问题出在哪里?

Winforms.Net应用程序赢得';t启动

异常是TypeInitializationException。这是在执行类型的初始值设定项代码时生成异常时引发的。基本上是静态构造函数或静态字段的初始化。初始化的某些部分引发异常,导致TypeInitializationException

异常信息本身将通过TypeName属性说明是哪种类型导致了这种情况。

很难说是什么原因导致了这个问题。最快的方法是在调试器下启动进程,并将其设置为在任何抛出的异常时中断。这应该会立即让你找到根本原因。

有趣的部分如下:System.TypeInitializationException

这意味着主方法中使用的某个类型未能初始化。通常,静态constructor抛出一个异常,该异常被初始化器捕获,然后作为System.TypeInitializationException的内部异常重新抛出。在主方法中捕获异常并显示其内部异常,或者使用调试器。