Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 无法捕获未知异常_.net_Opengl_Visual Studio 2012_F#_Error Code - Fatal编程技术网

.net 无法捕获未知异常

.net 无法捕获未知异常,.net,opengl,visual-studio-2012,f#,error-code,.net,Opengl,Visual Studio 2012,F#,Error Code,我用OpenTK为自己编写了一个F#OpenGL包装器,我看到当我运行应用程序大约5分钟时,它会中止,抛出一个异常并将其打印到控制台 问题是VisualStudio中的控制台立即关闭,我无法看到消息输出 所以我想我可以尝试捕捉它并添加一个像这样的断点 let game = new HelloCube.Game() try game.Run(60.,60.) with | :? System.Exception as e -> printfn "%s" e

我用OpenTK为自己编写了一个F#OpenGL包装器,我看到当我运行应用程序大约5分钟时,它会中止,抛出一个异常并将其打印到控制台

问题是VisualStudio中的控制台立即关闭,我无法看到消息输出

所以我想我可以尝试捕捉它并添加一个像这样的断点

let game = new HelloCube.Game()

try
    game.Run(60.,60.)
with
    | :? System.Exception as e ->
         printfn "%s" e.Message
         printfn "end" //breakpoint
但它没有捕捉到异常

所以我查看了错误代码

The program '[4236] HelloCube.exe: Managed (v4.0.30319)' has exited with code 9008 (0x2330).
我发现是这样的

DNS RR set that ought to exist, does not exist.
这不可能是正确的错误代码。DNS错误

有什么想法吗?

在函数末尾添加
(Console.ReadKey true)|>忽略
。这将导致控制台窗口暂停并等待按键(任意按键),然后退出(请参阅)

另外,使用
e.ToString()
而不仅仅是
e.Message
。将为您提供完整的strack跟踪和其他相关信息,这些信息通常比异常消息更有用


退出代码对于每个应用程序都是唯一的。查找错误代码时,必须确保所查看的字典与应用程序和版本号匹配。

如果在引发所有异常时将调试器设置为停止,则其行为如何?@RowlandShaw是的,我也尝试过,但它仍会中止并退出调试器。请尝试订阅
AppDomain.CurrentDomain.UnhandledException
事件。感谢您的接受,但我很难相信我确实回答了您的问题。:)