C#应用程序进行调试运行,但不能没有 [英] C# app runs with debugging, but not without

查看:217
本文介绍了C#应用程序进行调试运行,但不能没有的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我运行一个(主要)单线程程序(有,做一切,其他人只能读的东西一个主线程)。我可以申请到一个小的改动后运行正常在VS2008(我改变窗体的文本,另一种形式的选项卡顺序),但我再也不能得到它的调试器之外的工作。有谁知道什么原因呢?

I'm running a (mostly) single threaded program (there's a main thread that does everything, the others only read stuff). I can get the application to run fine in VS2008 after a minor change (I changed the text of a form, and tab order of another form), but I can no longer get it to work outside of the debugger. Does anyone know what would cause this?

澄清:的发布模式,以启动调试器(F5)的作品。调试模式,lanuched与调试器(F5)的作品。调试可执行文件,或释放可执行VS之外或使用Ctrl + F5无法启动。

Clarification: Release mode, launched with debugger (F5) works. Debug mode, lanuched with debugger (F5) works. Debug executable, or release executable launched outside of VS or with Ctrl+F5 fail.

它采用微软的虚拟地球3D,它似乎只是崩溃的时候(装载环)的希望之环即将完成。

It uses Microsoft's Virtual Earth 3D, and it seems to crash just when the 'ring of hope' (loading ring) is about to complete.

事件日志说:.NET运行库版本2.0.50727.3053 - 致命的执行引擎错误(000006427F44AA6E)(80131506)

Event log says: ".NET Runtime version 2.0.50727.3053 - Fatal Execution Engine Error (000006427F44AA6E) (80131506)"

罪魁祸首:此行:

        this.loader = PlugInLoader.CreateLoader(this.globeControl.Host);

导致其失败。然而,这是工作的形式使用完全相同的线路没有问题。这条线是nesseccary的程序运行。我不知道它在做什么。

Causes it to fail. However, the form that was working uses the exact same line without an issue. This line is nesseccary for the program to function. I have no idea what it's doing.

另一个铅的错误似乎是.NET框架内。应用工作在另一台计算机,尝试重新安装。 更新:不有​​所作为,虽然当我修好VS它不停地告诉我Visual Studio的是,虽然我没有把它运行甚至崩溃。

Another Lead the error seems to be inside the .NET framework. Application worked on another machine, attempting reinstall. Update: didn't make a difference, although when I repaired VS it kept telling me Visual Studio was crashing even though I wasn't running it.


错误 当我启动该程序一两分钟后,我得到: 应用程序生成了无法处理的异常。

Error When I launch the program after a couple minutes I get: Application has generated an exception that could not be handled.

Proccess ID = 0x9CC(2508),线程ID = 0xF0C(3852)。

Proccess ID=0x9CC (2508), Thread ID =0xF0C(3852).

点击确定以终止应用程序。
单击取消来调试应用程序。

Click OK to terminate the application.
Click CANCEL to debug the application.


反汇编是离奇:

0000000077EF2A90  int         3    
0000000077EF2A91  int         3    
0000000077EF2A92  int         3    
0000000077EF2A93  int         3    
0000000077EF2A94  int         3    
0000000077EF2A95  int         3    
0000000077EF2A96  xchg        ax,ax 
0000000077EF2A9A  xchg        ax,ax 
0000000077EF2A9E  xchg        ax,ax 
0000000077EF2AA0  int         3        <-- Crashes here
0000000077EF2AA1  ret

它重复同样的code座数次(上减去斧与自己交换)

It repeats that same code block several times (minus on ax exchanging with itself)


另外我的电脑,它一直每台机器我已经测试了,除了一个VM我的机器上,不会安装.NET框架,因为安装程序下载0字节出0字节的框架)...可爱的窗口。

推荐答案

我固定它,在.NET 2.0框架已损坏,当我重新安装了它,一切都奇迹般地开始工作了。

I fixed it, the .NET 2.0 Framework was corrupt and when I reinstalled it, everything magically started working again.

这篇关于C#应用程序进行调试运行,但不能没有的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆