我需要一些“光”来获得解决方案。可能有很多事情会导致这个问题,但也许有人可以帮助我。应用程序错误:故障地址0x00012afb(专家)
场景:运行24/7全天候运行的PostgreSQL数据库和其他服务器应用程序的Windows服务器(用于处理数据库上的任务等)。有不同的服务器场景(〜30),具有不同的硬件和Windows版本(XP SP3/WinServer等...都是基于NT的)。所有应用程序都使用Delphi7编写,并链接到DLL(也在D7中)。
经过一段时间(有时一周,有时几个月),Windows开始变得很奇怪,就像不打开开始菜单,对话框中缺少一些按钮。很快一些应用程序不开,在事件查看器养育事件:
Faulting application x, version y, faulting module kernel32.dll, version 5.1.2600.5781, fault address 0x00012afb
在这其间,其他应用程序打开罚款,如记事本,IEXPLORE,等...但我的一些应用程序不这样做,只有事件日志如上所述。但是,如果我们不重新启动系统,在几天内甚至cmd.exe停止打开,(和所有其他应用程序)在eventlog上具有相同的错误。
我试图找到'什么'可以导致这种情况,但没有成功。所以,任何建议都会受到欢迎。
在此先感谢。
这不会有任何帮助,但0x00012afb似乎在kerner32.dll中的入口点666(函数RaiseException)。 – Humberto 2010-06-14 20:01:40
它可以帮助,一些程序员有不引用异常的坏习惯。如果线程内存不足,那么异常可能导致整个进程退出,因为异常本身无法继续,并且C++运行时无法恢复。也许是对异常处理不好的暗示。 http://www.goingware.com/tips/parameters/exceptions.html – jdehaan 2010-06-14 20:08:01
添加到我以前的评论中,这个错误日志是不够的 - 如果日志在发生错误时包含整个堆栈,那就更好了。事实上,该事件只是说:“应用程序x,版本y抛出一个错误”。 – Humberto 2010-06-14 20:10:03