QuestionDescription:我现在手上有一个EXE文件和一个dll库文件,EXE文件没有源代码,dll有源代码,EXE文件运行后有要求输入dll路径名,并会动态加载输入的dll文件,现在想调试该dll,一般的情况----(exe文件一运行就加载dll文件)只要在dll项目中将启动项设为那个EXE文件就可以断点,但是这种情况----(exe文件运行后加载由用户指定的dll文件)设断点后就没有作用,项目在exe文件初始化后(还没有加载dll文件)就已经结束调试,exe文件就已经独立于项目运行.Question:这种情况有什么解决方案可以调试该dll吗??
答:0你的调试环境是?1尝试使用ollydbgfordlltool2看看该exe是否采用了一些反调试方法?
答:0你的调试环境是?1尝试使用ollydbgfordlltool2看看该exe是否采用了一些反调试方法?>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>0VC6.02这个怎么看啊
答:静态反汇编,凭以往的经验
答:进入dll工程==》工程中设置exe路径==》设置断点,调试运行(也有的环境可以直接dll调试,这个时候会要求输入exe程序路径,选择你的exe程序就可以了~)
答:方法①:对DLL的工程DEBUG,在DLL工程的ProjectSetting->Debug->Executablefordebugsession中加入你的.exe的路径和名字。可以在dll中设置断点,.exe程序必须要调用dll中函数。方法②:有个更好的方法:(我也没试过)在settings/debug中category选additionaldlls,然后将你要调试的dll加进来。这样,即使你用loadlibrary动态加载dll,也可以加断点了。在VS.net的测试中,还可以同时调试exe程序,调试dll实在系矛得弹。
答:方法①:对DLL的工程DEBUG,在DLL工程的ProjectSetting->Debug->Executablefordebugsession中加入你的.exe的路径和名字。可以在dll中设置断点,.exe程序必须要调用dll中函数。>>>>>>试过了,但是没用拉,断点不会停,exe执行正常,而且项目已显示调试结束--stopdebug不可用-------------------------------------------------------------------------------方法②:有个更好的方法:(我也没试过)在settings/debug中category选additionaldlls,然后将你要调试的dll加进来。这样,即使你用loadlibrary动态加载dll,也可以加断点了。>>>>我是只有dll的源代码啊,难道自己加载自己吗??
答:我是只有dll的源代码啊,难道自己加载自己吗??==============你的DLL总是应该先编译出来的吧,按前面的兄弟说的那样设置后,exe执行过程中自然就会跳到你的DLL代码断点处啦。
答:dll都有源码了都不能写个exe来调用测试一下?