在Delphi7中调试COM+

2016-02-19 12:37 10 1 收藏

下面是个超简单的在Delphi7中调试COM+教程,图老师小编精心挑选推荐,大家行行好,多给几个赞吧,小编吐血跪求~

【 tulaoshi.com - 编程语言 】

                                         在Delphi7中调试COM+

                                                                             刘晓明(Cipher)收集整理

       开发COM+应用系统最令人头痛的问题便是如何调试 COM+组件了。由于COM+是执行在COM+的执行环境中,因此Delphi 的程序员无法像Delphi的分布式多层应用系统一样可以直接在 Delphi 的IDE 中设定应用程序服务器的断点来调试。

      事实上, Delphi 仍然可以在 Delphi 的集成开发环境中调试 COM+组件,也可以让程序员在集成开发环境中在COM+组件的程序单元中设定断点,然后执行客户端应用程序调用 COM+组件。此时 Delphi 便会把执行控制权带到Delphi 的集成开发环境中,并且暂停在程序员设定的断点上让程序员开始调试。从此开始,程序员就可以像调试一般的应用程序一样来调COM+组件了。不过要如此调试COM+组件,程序员必须先做一些设定。

 ?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

1、在Delphi 的集成开发环境中激活要被调试的 COM+ 组件项目,点Projects|Options 菜单,在弹出的对话框中选择Linker页,选中其中的include Td32 info 和 include remote debug symbol ;

2、点 Run|Install Com+ Objects菜单,注册COM+组件,最好是注册到新的应用程序,也可以注册到已有的应用程序(这个应用程序需要是由Delphi 的注册COM程序产生的)。

3、运行Win2000的 控制面板|管理工具|组件服务,在COM+应用程序中找到刚才COM注册的应用程序,点右键,选择“属性”菜单,在弹出的对话框中,选择“高级”页,选中其中的“在调试器中启动”选项,在下面的调试路径中会有类似如下的内容:"C:Program FilesBorlandDelphi7Binordbg70.exe" dllhost.exe /ProcessID:{9CEC476D-83A5-4C2B-AFF1-3E83A147B866}

4、回到Delphi的集成开发环境,点选Run|Parameters 菜单,在对话框中,HostApplication设为:C:WINNTsystem32DLLHOST.EXE ,(要根据你的操作系统安装情况设定)。  Parameters 设为:/ProcessID:{9CEC476D-83A5-4C2B-AFF1-3E83A147B866};这个GUID的值要和Win2000组件服务中的属性值一致,可以从那边直接COPY过来。

5、设置断点,在Delphi的集成开发环境中运行COM;

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

6、在Windows中(或新开的Delphi环境中)运行调用这个COM的客户端程序。

这时会发现,Delphi开发环境中的COM停在断点处了,就可以接下来单步跟踪调试了。

 

来源:https://www.tulaoshi.com/n/20160219/1601311.html

延伸阅读
标签: Delphi
  打开Delphi的安装目录,如C:\Program Files\Borland\Delphi7,你将会看到目录下包含了一些文件和文件夹: Source:存放的是Delpi提供的所有源码,包括VCL、WEBSNAP、IntraWeb、ToolsAPI等的源码,我们平时要查找delphi的源码就可以到这里查找。还有一些Delphi提供的工具的源码也放在其下,如borland socket server(ScktSrv...
标签: Delphi
   Delphi 编辑器   在表面上,对IDE的第7个版本来说Delphi的编辑器看来似乎没有改变许多。 然而,在幕后,它是一个全新的工具。 除了用它来处理Object Pascal 语言(或者Delphi语言,Borland   现在喜欢如此称呼它)的文件之外,你现在能使用它来处理其它用于Delphi开发(诸如SQL,XML,HTML,和XSL文件)的文件...
标签: Delphi
  前言   第一次Zack Urlocker给我看一款尚未发布的名为Delphi的产品时,我意识到她将改变我的工作—还有许多其他软件开发者的工作。 我过去为使用Windows C++ 库而挣扎,而Delphi过去是现在仍然是面向对象编程和可视化编程的最好组合,它适用于Windows操作系统和Linux操作系统,很快也将适用于.NET。   Delphi 7完全继...
标签: Delphi
  Delphi作为一种面向对象的可视化开发工具,以其开发程序的高速度和编译代码的高效率越来越受到广大编程人员的喜爱。尽管Delphi已经提供了非常强大的开发组件(VCL),但灵活使用API函数一定可以使你的程序增色不少。 状态键的检查 当今不少流行软件的编辑窗口(包括Delphi的代码编辑窗口)的底部都有一个状态条...
  unit BDEClientDataSet; interface uses Windows, SysUtils, Variants, Classes, DB, DBCommon, Midas, SqlTimSt, DBClient, DBLocal, Provider, DBTables; type { TBDEQuery }   TBDEQuery = class(TQuery)   private     FKeyFields: string;   prot...

经验教程

924

收藏

31
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部