我创建了一个C#应用程序并将其安装在我的测试箱上。我的应用程序可以在我的开发箱上完美运行,但是当我在其他计算机上安装时,它在Main()中崩溃。我得到了EventType:CLR20r3

这是事件消息

    Problem signature:
    Problem Event Name: CLR20r3
    Problem Signature 01:   logfileviewer.exe
    Problem Signature 02:   1.0.0.0
    Problem Signature 03:   4f356c9c
    Problem Signature 04:   LogFileViewer
    Problem Signature 05:   1.0.0.0
    Problem Signature 06:   4f356c9c
    Problem Signature 07:   94
    Problem Signature 08:   44
    Problem Signature 09:   System.IO.FileNotFoundException
    OS Version: 6.1.7601.2.1.0.256.1
    Locale ID:  1033
    Additional Information 1:   0a9e
    Additional Information 2:   0a9e372d3b4ad19135b953a78882e789
    Additional Information 3:   0a9e
    Additional Information 4:   0a9e372d3b4ad19135b953a78882e789

我使用了详细信息,并在IL Disassembler中查找了错误代码,然后使用以下命令回溯...
    Method #5 (06000094)
    -------------------------------------------------------
    MethodName: .ctor (06000094)
    Flags : [Public] [HideBySig] [ReuseSlot] [SpecialName] [RTSpecialName] [.ctor] (00001886)
    RVA : 0x000081d0
    ImplFlags : [IL] [Managed] (00000000)
    CallCnvntn: [DEFAULT]
    hasThis
    ReturnType: Void
    No arguments.

.NET 4.0已被卸载并重新安装在系统上,没有进行任何更改。我在网上搜索了所有内容,但每个遇到相同问题的人似乎都没有解决方案。我现在已经花了一天半的时间解决这个问题。我不想错过我无法启动该应用程序的截止日期。

这是我Main()中的唯一代码
    static void Main()
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        Application.Run(new frmMain());
    }

以下是事件查看器的详细信息
    Application: LogFileViewer.exe
    Framework Version: v4.0.30319
    Description: The process was terminated due to an unhandled exception.
    Exception Info: System.IO.FileNotFoundException
    Stack:
        at LogFileViewer.frmMain.InitializeComponent()
        at LogFileViewer.frmMain..ctor()
        at LogFileViewer.Program.Main()

事件数据
    Application: LogFileViewer.exe
    Framework Version: v4.0.30319
    Description: The process was terminated due to an unhandled exception.
    Exception Info: System.IO.FileNotFoundException
    Stack: at LogFileViewer.frmMain.InitializeComponent() at LogFileViewer.frmMain..ctor() at LogFileViewer.Program.Main()

不确定设计器如何产生FileNotFound异常。我正在使用DotNetBar.dll,并且从安装目录中引用了它,所以应该很好。如果您愿意,我可以发贴我的设计师,但是那里有很多。

最佳答案

当我的应用程序依赖于部署计算机上不存在的引用程序集时,我也遇到了同样的问题。我不确定“从安装目录中引用DotNetBar”是什么意思-确保在您的项目中将其设置为CopyLocal=true,或者在开发机器和生产机器上都存在相同的完整路径。

关于c# - C#Windows应用程序事件: CLR20r3 on application start,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9244694/

10-13 05:27