问题描述
我想调试一个已创建的数据模块,该数据模块是DLL的一部分,但是由于某些原因,我无法对其进行调试。调试器似乎并没有达到断点,有没有一种方法可以调试Dll /数据模块。
解决方法
检查清单:
- 确保您的DLL已包含调试信息
- 如果是COM DLL,请确保它已在构建它的同一位置注册
- 尝试重新生成DLL,如果已更改界面,则重新构建App
- 在调试器加载DLL时显示是否具有调试信息,然后在EventLog中检入。
要调试DLL,在Delphi中加载的项目必须是DLL本身。您输入一个主机应用程序(您的应用程序服务器可执行文件),该主机应用程序将加载DLL。确保主机应用程序将DLL加载到生成位置的确切位置。构建后,您将无法移动DLL。
如果DLL必须位于某个固定位置,请确保设置DLL的项目选项,以便在正确的位置生成DLL。
当然,您必须激活DLL的调试版本配置。
使用诸如ProcessExplorer(GET /_search?INVALID_PARAMETER=true { //RANDOM BOD } - I'll get false
)之类的工具,您可以查看所构建的DLL是否实际上是应用程序服务器加载的DLL。