什么导致“Bad Process ID”错误?

3

在 Delphi 应用程序集合中的大约七个 .exe 文件中,其中三个在一个客户的 64 位 Win7 机器上出现了故障。

错误信息如下:

模块 ProgName.exe 中的异常 Exception,地址为 002f2baf
错误的进程 ID

两个应用程序的地址相同,第三个应用程序的地址为 002bd3f。

这是一个独立的应用程序,运行 Paradox/BDE,尽管它的年龄较老,我们需要迁移,但仍然在许多机器上运行我们的应用程序。

我们不使用任何线程。

通过谷歌搜索 "Bad Process ID" 的消息并没有找到看起来相关的结果。

这条消息是关于什么的呢?有任何建议吗?


使用类似madExcept的工具获取诊断堆栈跟踪并发现正在执行的代码。它需要一些费用,但是非常有价值。 - David Heffernan
1
还要检查Windows事件日志,可能包含其他信息。 - mjn
您也可以使用JCL获取堆栈跟踪。您可以查看我的简单日志,它可以自动捕获未处理和已处理的异常,并记录事件的堆栈跟踪。网址:http://www.cromis.net/blog/downloads/simplelog 这是一个简单的工具,因此不能替代重量级的日志记录工具。但它能够胜任工作,而且免费且易于使用。 - Runner
David:像往常一样,你的建议让我们找到了答案。madExcept帮助我们追踪到了一个古老的代码,在枚举进程时出现了故障。如果你把它发布为答案,我会标记它的。再次感谢你! - RobertFrank
1个回答

0

根据提供的信息,很难确定问题的原因。因此您需要一种收集更具体信息的方法。我建议使用调试工具,例如madExcept或EurekaLog。这些工具将在错误发生的时候生成堆栈跟踪信息,通常足够让您找出潜在的根本原因。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接