问个dll调试的一个奇怪的问题
真是奇怪,今天调试一个dll,设断点,竟然有的地方能设,有的地方不能设,我看了一下不能设的地方程序也绝对能够执行到,不知是为什么。 并且还有更奇怪的是,设了断点的地方,程序执行到时,再单步执行,竟然一下跳到别的地方了,根本不是单步执行应该走的地方。 给人的感觉就是编译器好像根本就没有找对那个设断点的地方。
肯请高手帮帮忙啊? 是C++ Builder的原因吗? 还是程序的原因?
[解决办法]
不可能吧?
你的DLL工程设置了调用该DLL的宿主程序了吗?只有设置了宿主程序才能进行调试啊。。
另外在Project-> Options-> Compiler里面选择了“Debug”的配置了吗?否则断点也是不会生效的。。。
[解决办法]
重新BUILD ALL试一下
[解决办法]
dll调试的时候在调用该dll的时候才出现点点的。
[解决办法]
把原来的.OBJ, .~cpp,.~h等编译的中间文件删除,全部重新编译一边DLL工程,应该问题就可以解决了!
[解决办法]
1、检查系统时间和DLL、宿主程序的时间
2、重新完全编译程序(包括DLL和宿主程序),设置DLL宿主程序
有可能是DLL或者宿主程序时间在现在的时间以后导致,BCB一直使用原来的程序所致,BCB默认使用最新的时间CPP文件!!
[解决办法]
同意:geochway(geochway) 的重新BUILD ALL试一下
[解决办法]
同意楼上~~~~,最好重新编译DLL和宿主程序!要打开debug 和compiler packages !