如何在程序结束之前执行一部分操作?程序结束的代码不是用的Close,是用的Application.Terminate,也有可能是其他程序.
解决方案 »
- dataset not in edit or insert mode
- 各位大侠帮满啊,各种图谱的编程怎么弄啊?比如轴心轨迹图,频谱图。。。
- 关于treeview的问题,高分赠送.
- Delphi中的Word表格问题
- 如何获得ActiveForm所在网页中的IP地址?兄弟请进。
- 怎么样清理从Word转化过来的网页的垃圾代码.
- group by 用法??
- 请教!数据导入菜鸟问题
- 哪位高手帮忙把这一小段java代码翻译成delphi
- 放在pageCONTROL上的DBMEMO,DBRICHEDIT会自动改变对齐方式?
- 能不能让dbedit输入的数据不提交数据集?
- TObjectList容器中对象的指针?
begin
MessageBox(0,'END','TEST',0);
end;procedure TForm1.Button1Click(Sender: TObject);
begin
AddExitProc(test);
Application.Terminate;
end;end.
最直接的就是在单元的finalization中写就行了。另外,调用Application.Terminate之前也可以调用AddTerminateProc,加进一个方法指针。
在Application.Terminate调用时,会一一调用这些方法指针楼主稍看一下Application.Terminate的代码就知道怎么做了。
实际上是调用 PostQuitMessage();
AddExitProc(test);写在
Application.Initialize;
Application.CreateForm(TForm1, Form1);
AddExitProc(test); //这里
Application.Run;
end.
有关HELP:
AddExitProc adds Proc to the exit procedure list, so that Proc is automatically executed when the application terminates. AddExitProc is not compatible with VCL package support and is provided for backward compatibility only. Do not use AddExitProc in new applications.
Application.Terminate;
AddExitProc(test);
也没问题。。用 halt 必须写到前面
AddExitProc(test);
Halt(0);
去查阅一相《Windows高级编程》吧。如果你是想保护数据,就应该能够每隔一段时间进行保存,就象Office一样。