我在中间层上设置了断点,但是在运行客户端程序时,无论怎样也进入不了断点,断点没有起到作用。这该怎么办呢?应该如何正确调试中间层呢?

解决方案 »

  1.   

    在Delphi中做好COM+以后,project-〉options-〉linker-〉include Td32 info 和 include remote debug symbol 选上;
    然后,在Delphi中注册COM+组件,注册到一个新的应用程序.
    打开Windows的组件服务中的COM+应用程序,找到刚才新建的应用程序,在属性的高级页中,选上"在调试器中启动选项",这时你会发现自动生成了调试器路径,这个路径(特别是后面的GUID参数)一定不要改.
    最后,回到Delphi,RUN|PARAMETERS
      HOST APPLICATION 填入 {系统路径}\system32\dllhost.exe
      PARAMETERS    /processID:{xxxxxxxxxxxxxxxxxxxxxxxxxxxxx}   这里的参数用刚才在组件管理器中自动生成的GUID参数
    在Delphi的COM+工程中运行.这时另外运行一个客户端程序(不一定要在Delphi中运行),当它调用刚才的COM+时,Delphi的COM+工程就会停在你设好的断点上.关键:顺序不要弄反,是先设好组件属性,最后再设Delphi的运行参数.