试过了如下方法:
1、利用Run->Parameters:
2、Run->Add breakpoint->Module Load Breakpoint:将编译完成的这个dll加入
3、View->Debug Windows->Modules:将编译完成的这个dll加入
奇怪的是三种方法都拦截不到dll的运行,就是在dll里设置断点却没有停下来,想从主程序按f7进入dll得函数也不行,请问这是为什么?应该如何做呢?能否写个具体步骤?

解决方案 »

  1.   

    1、将调用该DLL的程序复制到DLL的同级目录
    2、在RUN -> Host Application 选择刚复制过来的程序
    3、加上断点
    4、run你上面的做法没有一个好用的很正常,好象不是这么用的,如果照我这样还不能停的话,是不是你的代码被优化了,也就是说不会执行的语句。
      

  2.   

    纠正一下
    2、 run -> Parameters - Host Application
      

  3.   

    1、project->option->directions/conditions
    2、 run -> Parameters - Host Application(关联到.dpr同一目录)
      

  4.   

    是不是XP啊?XP调试DLL经常有这个问题!
      

  5.   

    请问可不可以在主程序里设置断点,按f7的时候跳到dll的某个函数里?
    在vc里是可以的,不知道delphi可不可以?多谢了。
      

  6.   

    delphi调试的方法与VC++差不多的,不过我没看懂你什么主程序设置断点,按F7什么的
      

  7.   

    我的意思是:
    比如Fun()是dll里得函数,我在主程序的Fun这里设置断点,然后按F7就跳到dll的代码里。请问这样可不可以?应该怎么样设置ide呢?在vc里是可以的。
      

  8.   

    Delphi5在XP和2003下就是无法调试DLL(起码我们这没有行的)
    Delphi6要打补丁
    你是不是这两个版本
      

  9.   

    我的是7.0,我在dll下可以调试了,但是现在就是想在主程序里调试,
    比如Fun()是dll里得函数,我在主程序的Fun这里设置断点,然后按F7就跳到dll的代码里。请问这样可不可以?应该怎么样设置ide呢?在vc里是可以的。
    还有请问delphi7.0有没有什么好的插件,就像vc里得visist或者boundcheck一样。