不知道有没有发错版请各位大牛帮帮忙:)建了一个win32 console的application, 工程依赖一个以前写的一个dll和lib文件,cpp文件也都有,但是在debug调试的时候F11 step into总是无效,直接跳过,进不到函数定义里面去。这样的工程应该怎么设置属性呢,只设置dll路径和lib路径,没有设置cpp文件路径可以实现单步跟踪调试吗?请各位大侠指点一下。
谢谢!

解决方案 »

  1.   

    你是要进入DLL的函数还是外面的函数,不是很清楚另外你直接在函数里设置断点用F10看看能不能进去
      

  2.   

    程序启动加载的dll是不是最新编译的debug版本的?
      

  3.   

    要是只想调试dll里的函数,可以编译dll工程之后调试,然后调试程序选择你新建的这个win32应用程序。
      

  4.   

    只要程序启动加载的dll是最新编译的debug版本就应该没问题。
      

  5.   

    如果你的测试程序 想进入DLL函数里面可啊?应该不可以吧。。
    要是是测试程序的CPP应该可以进去的。。如果不太清楚调试给你个链接。调试入门的http://www.vckbase.com/document/viewdoc/?id=924
      

  6.   

    想进DLL里面的函数,但是源文件我都有,DLL是根据这些源文件生成的,
    源文件太多了,我就用到其中的几个类,所以就借用DLL来实现,直接在函数里面设断点也试过,好像也不行
      

  7.   

    想进DLL里面的函数,但是源文件我都有,DLL是根据这些源文件生成的, 
    源文件太多了,我就用到其中的几个类,所以就借用DLL来实现,直接在函数里面设断点也试过,好像也不行
      

  8.   

    相进dll里面应该调试dll
    而不是调试主程
    不过设置依赖可能能断进去
    需要你配置一下工程
      

  9.   

    把DLL的原文件放进你的工程里就可以了
      

  10.   

    dll是调试版吗,可以再dll的函数里加上下面的代码,然后在重新编译
    __asm
    {
    int 3;
    }
      

  11.   

    调试时候注意看DEBUG信息,如果有Loaded '你要调试的.dll', no matching symbolic information found.信息,那肯定是调试不了的,但就算是有Loaded symbols for '你要调试的.dll'信息,也不一定能跟进去,需要版本匹配,这时你需要重新编译DEBUG版本的DLL。