我有一个相当标准的C ++ / QT应用程序,可以在我的开发PC上进行调试和发布。在干净的PC上试用发布版本时,它会运行,但部分功能(通过USB连接显示视频)不会运行。好吧,之前看过这个,我的标准技术是将调试信息添加到发布版本,设置远程调试并查看。令我惊讶的是,它作为具有调试信息(.pdb)的发布版本运行良好 我以前从未见过这个。
使用依赖性walker显示任何依赖项都没有问题。使用作为Dependency Walker一部分的探查器,它也可以完美运行。
我已经用完了调试技术,我唯一能想到的就是在多线程应用程序中的各个地方添加消息框似乎不太好。
是否有调试技术可以帮助我找到这个问题?我们使用的是VS2008和Qt 4.7.1。
答案 0 :(得分:1)
我认为伐木是你的朋友。如果您有多个线程,则可能需要将每个线程记录到不同的日志文件中。
答案 1 :(得分:1)
优化消息框 - 使用日志文件。
从你的描述中,在我看来,可能是某种竞争条件/时间问题,当一些线程或其他因某些东西被观察而减慢时,它会被解决。或者通过向二进制文件添加调试信息。
使用带有时间戳的日志文件,您应该能够跟踪事情的发生时间。