現在、SFML.Net を使用する単純な C# アプリケーション/ゲームがあり、実行後 1 ~ 2 秒以内に実行を停止/終了しますが、警告や例外などは一切発生しません。次のコードを検討してください。
public static void Main(string[] args)
{
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(OnUnhandledException);
--> The following two lines are run
Console.WriteLine("Hello");
Console.WriteLine("Please don't go...");
// Run the game
try
{
--> This line is reached
Game.Run();
}
catch (Exception e)
{
--> This line is never reached
Console.WriteLine(e.Message.ToString());
}
--> These lines are never reached
Console.WriteLine("Noone ever comes here, I feel so lonely... :(");
Console.ReadKey();
}
}
この時点で、おそらく Game.Run() メソッドに問題があると思われます。奇妙なことは、VS Debugger によると、メソッドの最初の行に到達しないことです。
public static void Run()
{
try
{
--> Never reached
LoadContent();
// Do stuff here
while (window.IsOpen())
{
// The classic game loop
}
}
catch (Exception e)
{
--> Never reached
Console.WriteLine(e.Message.ToString());
Console.ReadKey();
}
}