怎样在VC++下调试COM对象
2003-08-24 15:35
344 查看
怎样在[/b]VC++[/b]下调试[/b]COM[/b]对象[/b]
[/b]
调试进程外服务(Debugging Out-Of-Process Server)
因为服务的方法和事件的实现要靠客户来触发,所以调试服务必须要先启动客户程序。
方法一:
1. 在Project àSetting的Debug Tab上输入客户程序;
2. 在服务程序代码中设置断点既可调式。
方法二:(在客户工程中启动调试任务)
1. 打开客户工程,设置为Debug编译模式;打开JIT( Jst-In-Time )选项。
[ ToolàOptionàDebug Tab] 选定 "Just-In-Time Debugging " 和
"OLE RPC Debugging" 选项。
![](http://blog.csdn.net/Develop/ArticleImages/20/20622/CSDN_Dev_Image_2003-8-231442390.gif)
2. 在代码中,调用服务的那行代码处设置断点,启动Debugger运行客户程序;
3. 当调试在断点处(调用服务处)停止时,跟进(Setp Into)调用,如果你的应用
程序连到了MFC,VC会自动打开进入到正确合适的代码处;
4. 用步进( Step Over )调试直至出现汇编,在客户stub DLL的开始处标记;
5. 继续运行通过Stub和Proxy单步调试,当步进到服务的方法时,VC会自动启动
debugger的另一个实例。
< 参见MSDN "HOWTO:Debug OLE Application >
Debug the Message ActiveX Control[/b]
[Project àSetting à Debug Tab,在"Executable For Debug Session" 的中选
择合适的程序]
调试远程对象([/b]Debug Remote Object[/b])[/b]
Attaching the Debugger to a Remote Process[/b]
[/b]
1. [/b]打开客户程序,设置好断点;
2. [/b]用Debugge运行程序直至触发断点,确定此此时对象在服务方已被激活;
3. [/b]在组件所在的机子上启动VC,激活Attach To Process命令,从弹出的进程列表
框中选择组件或她的Surrogate,使Debugger吸附到对象的进程中。
4. [/b]在VC环境中打开组件源代码,设置好断点;[/b]
5. [/b]在客户端,恢复运行程序,当远程对象运行到断点时,停止。
[/b]
调试进程外服务(Debugging Out-Of-Process Server)
因为服务的方法和事件的实现要靠客户来触发,所以调试服务必须要先启动客户程序。
方法一:
1. 在Project àSetting的Debug Tab上输入客户程序;
2. 在服务程序代码中设置断点既可调式。
方法二:(在客户工程中启动调试任务)
1. 打开客户工程,设置为Debug编译模式;打开JIT( Jst-In-Time )选项。
[ ToolàOptionàDebug Tab] 选定 "Just-In-Time Debugging " 和
"OLE RPC Debugging" 选项。
![](http://blog.csdn.net/Develop/ArticleImages/20/20622/CSDN_Dev_Image_2003-8-231442390.gif)
2. 在代码中,调用服务的那行代码处设置断点,启动Debugger运行客户程序;
3. 当调试在断点处(调用服务处)停止时,跟进(Setp Into)调用,如果你的应用
程序连到了MFC,VC会自动打开进入到正确合适的代码处;
4. 用步进( Step Over )调试直至出现汇编,在客户stub DLL的开始处标记;
5. 继续运行通过Stub和Proxy单步调试,当步进到服务的方法时,VC会自动启动
debugger的另一个实例。
< 参见MSDN "HOWTO:Debug OLE Application >
Debug the Message ActiveX Control[/b]
[Project àSetting à Debug Tab,在"Executable For Debug Session" 的中选
择合适的程序]
调试远程对象([/b]Debug Remote Object[/b])[/b]
Attaching the Debugger to a Remote Process[/b]
[/b]
1. [/b]打开客户程序,设置好断点;
2. [/b]用Debugge运行程序直至触发断点,确定此此时对象在服务方已被激活;
3. [/b]在组件所在的机子上启动VC,激活Attach To Process命令,从弹出的进程列表
框中选择组件或她的Surrogate,使Debugger吸附到对象的进程中。
4. [/b]在VC环境中打开组件源代码,设置好断点;[/b]
5. [/b]在客户端,恢复运行程序,当远程对象运行到断点时,停止。
相关文章推荐
- C++中的文件输入/输出(5):二进制文件的处理
- C++中的文件输入/输出(4):检测输入/输出的状态标志
- C++ Builder 初学问与答(八)
- C++中的文件输入/输出(3):掌握输入/输出流
- VC++ MFC 常用技巧 (一)
- C++中的文件输入/输出(2):读取文件
- C++中的文件输入/输出(1):你的第一个程序
- C++入门解惑(3)——初探指针(下)
- 两种面向对象的C++线程模型
- 用PHP实现通过Web执行C/C++程序
- C++ Builder 初学问与答(六)
- C++ Builder 初学问与答(七)
- MinUnit – 最小的c语言测试模板
- 入门计划->使用(C++库)fstream读写文件
- 入门计划->使用(C++库)ifstream读文件数据
- 入门计划->使用(C++库)ostringstream输出(格式化)
- 入门计划->使用(C++库)ofstream写文件数据
- 入门计划->使用(C++库)istringstream输入(格式化)
- C语言国际标准 ISO/IEC 9899:1999(E) 翻译(四):库
- 免费C++编译器介绍