如何使C#应用程序崩溃

11
我想测试一下我的应用程序的崩溃转储是否可以进行调试。但首先,我需要生成一个应用程序的崩溃转储文件。我使用C#编写我的应用程序,并尝试了很多异常和不安全代码等,但是没有成功。
谢谢!
编辑:抱歉,我忘了一些东西,我正在使用Unity3D制作应用程序,它会自动处理异常。
编辑2:感谢大家的回答。我在标准的C#应用程序中测试了你们的建议,都可以正常工作,但是在我使用C#编写的Unity3D应用程序中无法实现。似乎Unity3D需要更多的努力来引起崩溃,我可能会给Unity3D发送电子邮件询问一个答案。如果有答案,我会在这里发布。谢谢!

15
恭喜,您似乎是最专业的程序员! - WarrenFaith
2
对象 obj = null; obj.ToString(); - kostas ch.
4
强制抛出异常。 - Microsoft DN
7
部分拆下主板上的DIMM? - Keith Payne
2
也许这会有所帮助:https://dev59.com/kHNA5IYBdhLWcg3wAItP - Moo-Juice
显示剩余6条评论
14个回答

0

你也可以除以零,

z = 0; 
int divide = 1 / x;

-1
 int[] x = {0};
 int blah = x[2];

同样会引发异常


抱歉,我尝试抛出异常,但这并没有使我的应用程序崩溃。 - fieldChao
抱歉,我丢失了一些东西:我使用Unity3d,并且它处理所有异常,只需在输出文件中显示异常即可。谢谢。 - fieldChao

-1

如果您尝试转换一个空的游戏对象,那么复现这个问题就很容易。例如,像这样:

public static GameObject gameObjectCrash;
public void GenerateCrash()
{
    gameObjectCrash.transform.rotation = Quaternion.Euler(90, 0, 0);
}

-3
使用以下代码关闭应用程序。
Environment.Exit(1);    

Exit需要一个名为exitcode的参数。如果exitcode=0,则表示没有错误。提供一个非零的退出代码以反映错误。


1
这是关闭操作,不是崩溃。 - Петър Петров

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接