怎么才能知道程序异常退出的原因?
- Delphi(Pascal) code
procedure TMyReadThread.UpdateData;begin Try Form1.Button14.Caption :=inttostr(Random(100)); except //Try end; //Tryend;procedure TMyReadThread.Execute;vartest,tt:Dword;begin While not self.Terminated do begin wupinend:=0; EnterCriticalSection(MyReadCs); //进入临界区 ReadProcessMemory (hProcess, Pointer(test+$10), @MyTTA, 4, tt); LeaveCriticalSection(MyReadCs); //离开临界区 Synchronize(UpdateData); Sleep(500); end;end;
程序启动了3条线程,3条线程都和上面的代码类似,Execute读取/写入一些内容,然后UpdateData显示到程序主界面
Execute中读取/更新的全局变量内容有可能在程序的其他地方的任意时间被访问到
程序还连接到了mysql,与mysql通信的语句也全部加了try处理
程序在执行过程中有可能会突然消失,退出,也没有错误提示框出现[我一般是在程序退出几分钟后才发现程序消失了]
请问这样的情况,我该怎么才能找到出错的原因啊?
[解决办法]
如果你放对了的话; 最上面应该是 program 而不是unit 什么的...
放在工程的第一个uses 中,而不是单元