Delphi服务应用程序通过Application.Run方法获取过去
我正在调试旧的 Delphi 服务应用程序(它很旧,但使用 Delphi 2010 编译)。该服务一启动就会终止,但同一应用程序的 GUI 版本却不会。
当我尝试调试该服务时,我意识到它通过了 Application.Run 方法并正常存在。似乎没有抛出任何异常,除非调试服务有一些我不知道的怪癖。
在调用Application.Run之前,启动Data Module和DataSnap。一切似乎都进行得很顺利。
所以,我的问题是:我该如何调试这个?在这种情况下,单步进入 Application.Run 与单步执行相同。
I'm debugging a legacy Delphi service application (it is old but compiled with Delphi 2010). The service dies as soon as it starts, but the GUI version of the same app doesn't.
When I tried to debug the service, I realized that it gets past the Application.Run method and exists gracefully. No exceptions seems to be thrown, unless debugging services has some quirks that I'm unaware of.
Before the calling of Application.Run, a Data Module and DataSnap are started. Everything seems to run smoothly.
So, my question is: how can I debug this? Stepping into Application.Run is the same as stepping over in this case.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要在编译选项中勾选调试DCU,项目才能在调试器下单步执行VCL代码。
You need to tick Debug DCUs in the compile options for the project to be able to step through VCL code under the debugger.