Delphi   发布时间:2022-04-10  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Delphi中MainForm的OnShow事件中的ExitProcess大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个应用程序,在启动时检查一些条件,并在主窗体的OnShow事件中启动外部程序.问题是如果启动外部程序时出错,我希望应用程序立即终止.但是有一个问题,因为EurekaLog捕获了我的异常并以某种方式通过否定对Application.Teminate和任何其他正常关闭方法的所有调用来中断消息循环.

所以这是我的问题,当这种情况存在时,ExitProcess是否是立即终止我的应用程序的最佳途径?

解决方法

当OnShow被解雇时,你进入程序太远,无法确定你真的不希望程序运行.你应该尽快做出决定. OnShow不是决定不应该显示表单的地方.

在您创建主窗体之前,应该检查这种情况.将检查放入DPR文件中,如果确定程序不应运行,则只需调用exit.

begin
  Application.Initialize;
  if not ApplicationShouldReallyStart then
    exit;
  Application.CreateForm(TMainAppForm,MainAppForm);
  Application.Run;
end.

填写您自己的ApplicationShouldReallyStart实现. (它确实应该是一个单独的函数,而不是DPR文件中的内联.如果DPR文件中的开始结束块太复杂,IDE会感到困惑.)

除此之外,不要调用ExitProcess.请停止呼叫暂停. Halt调用ExitProcess,但它也调用单元终结部分和其他Delphi特定的进程关闭任务.

大佬总结

以上是大佬教程为你收集整理的Delphi中MainForm的OnShow事件中的ExitProcess全部内容,希望文章能够帮你解决Delphi中MainForm的OnShow事件中的ExitProcess所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。