VC2005调试: DLL调试, 远程调试;
2013-11-14 16:21
302 查看
VC2005 Dll调试:
如果EXE文件和DLL一样, 都处于你一个开发的状态, 那么可以放在同一个解决方案中, 直接调试;
但是,有时候, 我们开发的DLL, 是给其他人使用的, 或者, 你此时不想调试EXE;
这时候, 可以在DLL工程选项中, 选择"调试"选项卡:
"工作目录"---- 填入EXE文件所在的目录; 比如D:/Test/
"命令"----填入EXE的文件名; 比如abc.exe
如果EXE是托管开发的(比如C#), 而DLL是非托管开发(比如C++), 那么"调试类型" 要选择 仅限本机 , 就是native 的意思; 如果选择"自动", 如果EXE的托管的,那么本机代码将不会被调试;
VC2005远程调试:
调试前提, 被调试机器上有运程调试器程序, 这个程序可以从VS2005的安装目录下拷贝:
拷贝一个文件夹就可以了. 然后运行这个程序, 你会看到服务器的名称, 这个名称下面需要用到.
如果是默认安装,那么这个文件夹的路径如下:
C:/Program Files/Microsoft Visual Studio 8/Common7/IDE/Remote Debugger/x86
[附加到进程]:菜单:“调试”---“附加到进程”
被调试端---Remote PC;
运行程序的用户名 和 运行 远程调试器的用户名(可在) 具有对调试端的访问权限(USER组就可以了)
比如: UserA;
调试端---Local HOST;
运行VS的用户名具有对Remote的访问权限(USER)就可以了
比如: UserB:
那么, 需要在Remote PC 上添加UserB, 密码是对端相同; 可以是User组
在Local Host上添加UserA; 密码是对端相同; 可以是User组
[F5直接启动远程调试]:
如果不进行提前设置, F5将启动本地调试; 要启动远程调试必须先进行"项目属性"的设置:
在"项目属性"---"调试"--- 调试类型选择 "远程调试"
主要是两个地方: 一个是输出文件位置, 也可以在生成后事件里拷贝或手动拷贝;
另一个是调试文件位置, 需要设置调试类型为远程调试, 然后设置服务器为: 运程服务器名,
这个名字就是远程调试器上显示的名称. 如M8000@SetM8000, M8000表示的是连接远程计算机
所使用的用户名, 调试主机上需要有这个用户名才能正常连接.
还需要设置"远程命令", 就是调试时运行哪个文件, 可以直接写被调试机器上的实际目录,
比如: D:/Test/Test.exe
如果EXE文件和DLL一样, 都处于你一个开发的状态, 那么可以放在同一个解决方案中, 直接调试;
但是,有时候, 我们开发的DLL, 是给其他人使用的, 或者, 你此时不想调试EXE;
这时候, 可以在DLL工程选项中, 选择"调试"选项卡:
"工作目录"---- 填入EXE文件所在的目录; 比如D:/Test/
"命令"----填入EXE的文件名; 比如abc.exe
如果EXE是托管开发的(比如C#), 而DLL是非托管开发(比如C++), 那么"调试类型" 要选择 仅限本机 , 就是native 的意思; 如果选择"自动", 如果EXE的托管的,那么本机代码将不会被调试;
VC2005远程调试:
调试前提, 被调试机器上有运程调试器程序, 这个程序可以从VS2005的安装目录下拷贝:
拷贝一个文件夹就可以了. 然后运行这个程序, 你会看到服务器的名称, 这个名称下面需要用到.
如果是默认安装,那么这个文件夹的路径如下:
C:/Program Files/Microsoft Visual Studio 8/Common7/IDE/Remote Debugger/x86
[附加到进程]:菜单:“调试”---“附加到进程”
被调试端---Remote PC;
运行程序的用户名 和 运行 远程调试器的用户名(可在) 具有对调试端的访问权限(USER组就可以了)
比如: UserA;
调试端---Local HOST;
运行VS的用户名具有对Remote的访问权限(USER)就可以了
比如: UserB:
那么, 需要在Remote PC 上添加UserB, 密码是对端相同; 可以是User组
在Local Host上添加UserA; 密码是对端相同; 可以是User组
[F5直接启动远程调试]:
如果不进行提前设置, F5将启动本地调试; 要启动远程调试必须先进行"项目属性"的设置:
在"项目属性"---"调试"--- 调试类型选择 "远程调试"
主要是两个地方: 一个是输出文件位置, 也可以在生成后事件里拷贝或手动拷贝;
另一个是调试文件位置, 需要设置调试类型为远程调试, 然后设置服务器为: 运程服务器名,
这个名字就是远程调试器上显示的名称. 如M8000@SetM8000, M8000表示的是连接远程计算机
所使用的用户名, 调试主机上需要有这个用户名才能正常连接.
还需要设置"远程命令", 就是调试时运行哪个文件, 可以直接写被调试机器上的实际目录,
比如: D:/Test/Test.exe
相关文章推荐
- ubuntu ufw 防火墙
- Linux中Kill进程的N种方法
- 黑马程序员-javaSE学习之语言基础细节详解
- UIDynamicAnimator
- EF在单例模式及C/S方式开发时,操作数据对象以后如果发生异常,要做善后工作。
- centos5.5安装zabbix2.0.9
- java练习 jtable增加删除
- Linux性能监控:/proc/loadavg
- SmartFoxServer项目总结
- Android TextWatcher监控EditText中的输入内容并限制其输入字符个数
- 关于ora-04065和ora-04068的原理解释
- 对Ron Eglash在Ted演讲上提到的Bamana沙地符号的想法
- Spring MVC 对于@ModelAttribute 、@SessionAttributes 的详细处理流程
- $.ajx的用法
- ngx-push-stream模块源码学习(五)——内存清理
- 编写一个程序,实现单链表的各种基本运算
- 什么叫虚拟内存
- MVC3和MVC4相关问题
- ngx-push-stream模块源码学习(四)——订阅
- Win7技巧:如何知道电脑在离开时被登陆过