在Delphi7中调试COM+

                                         Delphi7中调试COM+

                                                                             刘晓明(Cipher)收集整理

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

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

 

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 Files/Borland/Delphi7/Bin/bordbg70.exe" dllhost.exe /ProcessID:{9CEC476D-83A5-4C2B-AFF1-3E83A147B866}

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

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

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

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

 

阅读终点,创作起航,您可以撰写心得或摘录文章要点写篇博文。去创作
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 在C语言,count++是一种递增运算符,用于将count的值加1。在表达式使用count++时,该运算符将首先返回count的当前值,然后将count的值加1。这意味着,如果将count++用于赋值语句或表达式,那么它将使用count的当前值,并将count的值增加1。例如,以下代码将使用count的当前值,将其加1,并将结果赋给变量x: ``` int count = 10; int x = count++; ``` 在这个例子,x的值将是10,而count的值将变为11。 ### 回答2: 在C语言,count++ 是一个用于递增计数器的操作符。它的功能是先使用当前的计数器值,然后将计数器的值增加一。具体来说,count++ 是一个后缀递增操作符,它会返回计数器的当前值,并将计数器自增一。 为了更好地理解 count++,可以考虑以下示例代码: ```c int count = 0; int result = count++; ``` 在这个例子,我们创建了一个名为 count 的整数变量,并将其初始值设置为 0。接下来,我们使用 count++ 将 count 的值赋给 result,并将 count 自增一。 在执行这段代码后,result 的值将为 0,而 count 的值将变为 1。这是因为 count++ 返回的是 count 的当前值,在这个例子就是 0。然后才会将 count 自增一。 因此,可以理解为 count++ 是一个两步操作:首先返回 count 的当前值,然后将 count 的值增加一。这个操作符方便了计数器的使用,常见于循环控制、计数统计等场景。需要注意的是,count++ 只是在变量的后面进行自增操作,而不是前面。如果想要在变量的前面进行自增操作,可以使用 ++count 这样的前缀递增操作符来实现。 ### 回答3: 在C语言,count++是一个后置递增运算符,用于将count的值增加1。它可以被理解为count=count+1或者count+=1。 具体实现上,count++的执行过程可以分为两步: 1. 首先,当前count的值会被使用,在表达式参与计算或者赋值等操作。 2. 然后,在使用count之后,count的值会被自动增加1。 需要注意的是,count++是一个副作用产生的操作,它会改变原有的count的值。因此,对于需要使用count自增后的值进行运算或者赋值,可以使用count++;而对于只需要使用count自增前的值进行运算,可以使用++count,这被称为前置递增运算符。 举个例子,假设count的初始值为10: int a = count++; 在这个表达式,首先将count的值(即10)赋给a,然后count的值增加1。这样,a的值为10,而count的值为11。 总结来说,count++可以理解为先使用count的值,再将count增加1。每次使用count++时,count将会自增1,方便在循环、计数等场景下使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Cipherliu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值