我尝试关闭在Windows CE 6.0设备中运行的应用程序。 我试过下面的代码。
System.Diagnostics.Process.Start("ShutDown", "/r");//to restart
Process.Start("shutdown.exe", "-s");
Application.Exit();
System.Windows.Forms.Application.Exit();
Process procs = Process.GetCurrentProcess();
procs.Kill();
this.Close();
以上所有代码在调试和应用程序执行Application.Exit();
时关闭时正常工作。但是当我将代码编译成 autorun.exe (可执行文件)并运行时,屏幕会在执行同一行时冻结。
请指导我这个问题。
public Form1()
{
int i = AddFontResource("\\Flash Disk\\Arial Unicode MS.TTF");
int c = AddFontResource("\\Flash Disk\\Devanagari_new.TTF");
int d = AddFontResource("\\Flash Disk\\Mangal.TTF");
InitializeComponent();
}
答案 0 :(得分:0)
如果您使用自己的设置设置字体,则会出现导致挂起的已知错误。注释掉你的字体设置代码,看它是否正常运行和关闭。如果是的话,那就是设置字体的错误。顺便说一下,确保您的目标系统具有字体......这可能是问题之一。
获取Debugger并使用它来分析在关机期间导致挂起的原因。它使用起来相当简单。或者这个Debugger。我不知道你的完整设置。
如果您不确定,this article将成为您开始调试的非常好的指南。
另外,如果您还没有这样做,请将代码包装到__try{}__except{}
。可能存在内存泄漏,但在我们从其中一个来源看到一些信息之前我们不会知道。