我有一个程序,它在关机期间遇到了一些问题,引发了一些我无法追溯到其来源的异常。它似乎是与时间相关的,并且是不确定的。这是在所有共享资源被释放之后发生的,因为它已经关闭,内存泄漏不是问题,所以我想知道是否有任何方法可以在释放共享资源后立即静默地告诉程序终止,而不是继续关闭序列并给出异常消息框。
有人知道怎么做吗?
发布于 2009-07-26 18:41:04
在查看了Delphi运行时库源代码和Microsoft文档之后,我可以证实Mason和Paul-Jan的评论。
关闭的层次结构如下
Application.Terminate()
performs some unidentified housekeeping of application
calls Halt()
Halt()
calls ExitProc if set
alerts the user in case of runtime error
get rid of PackageLoad call contexts that might be pending
finalize all units
clear all exception handlers
call ExitprocessProc if set
and finally, call ExitProcess() from 'kernel32.dll'
ExitProcess()
unloads all DLLs
uses TerminateProcess() to kill the process
发布于 2009-07-26 16:50:23
ExitProcess(0)?
发布于 2009-07-26 17:05:03
Halt(0)曾经是一种很好的老式方式,用来告诉程序立即结束。现在可能有一种对Delphi更友好的方法来实现这一点,但我95%确定halt(0)仍然有效。:-)
https://stackoverflow.com/questions/1184929
复制相似问题