如何调试COM+程序(100分)

  • 主题发起人 主题发起人 peterzhou20
  • 开始时间 开始时间
P

peterzhou20

Unregistered / Unconfirmed
GUEST, unregistred user!
在DELPHI中如何调试COM+程序,按李维的方法不行!!!!!
 
首先在COM+工程中使用Run Parameters HOST为: e:/winnt/system32/DllHost.exe
Parameters为 /ProcessID:{5C490BAC-B307-44C5-BC76-58467FFDE6C4} 该ID可以在
组建管理器的该组件属性的高级->调试中取得 当然需要设定在调试器中启动项。
该方法在delphi6 win2000 Pro中通过
 
hotplum 对的。
要开两个DELPHI,先运行COM+的,再运行CLIENT的
 
win2ksvr(sp3),delphi6一样
开一个Delphi,设置Com+的断点,run后执行客户端程序就可以了.
 
用“大富翁全文检索”以“COM+调试”查询,会有很理想的答案的!
http://www.richsearch.com
 
hotplum的方法,可能是不行的。
如果不行,可以在COM+中选择调试,
关键:在调试筐中的一长字符串中,保留:
C:/Program Files/Borland/Delphi6/Bin/bordbg60.exe ,其余的删除。
 
总结:
1.打开Com 项目
2.注册
3.在组件服务中找到该项目,也就是应用程序com+的属性。
选择在调试中启动,同时拷贝/ProcessID:{F87B39FE-4612-4753-953C-B46B221B965B}
4.在Delphi中的 Run下面有Parameters 打开,在parameters中粘贴/ProcessID:{F87B39FE-4612-4753-953C-B46B221B965B}
在host中输入C:/WINNT/system32/DLLHOST.EXE
5.保存,run,可以看到com运行,要停止可以在run下选择Program reset.
6.在Com中设置断点。
7.启动客户端,可以是Exe文件,也可以在另外Delphi环境下。
8.如果不行,可以在调试筐中的一长字符串中,保留:
C:/Program Files/Borland/Delphi6/Bin/bordbg60.exe ,其余的删除。
 
我想是最后的补充了:
在停止组件服务后作以下步骤 (windows2000 pro and delphi6.0)
1,在你的Com+的project中run 菜单下添入以下信息
d:/WINNT/system32/dllhost.exe host
/processID:{********************}para 其中,*************是在注册后在windows中的
信息,可以从组件服务中获得这个号,他不是com的GUID
2,在'组件服务'注册组件组的地方点右键,选择属性
3,在属性的"高级"页中设置"调试路径",录入:
D:/Program Files/Borland/Delphi6/Bin/bordbg60.exe dllhost.exe /ProcessID:{*************}
最后的****与第1步的号一致
4, project---->options--->linker--->exe and dll options --> 把两个Include 项打勾
5,然后....调试
 
后退
顶部