C++ VC2005调试: DLL调试, 远程调试
2010-05-18 16:26
260 查看
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
相关文章推荐
- VC2005调试: DLL调试, 远程调试;
- VC2005调试: DLL调试, 远程调试;
- VC2005调试: DLL调试, 远程调试;
- VC2005之远程调试
- VC2005之远程调试
- vc2005 windowsXP IE 8 下的BHO DLL调试 .
- VC2005之远程调试
- 在VS2015中用C++创建DLL并用C#调用且同时实现对DLL的调试
- 用VC写DLL中"error LNK2005: _DllMain@12 already defined"的错误
- VS 2005 创建DLL工程,并进行调用与调试例子
- 转:配置 SQL Server 2005 远程调试存储过程
- vc2005 附加到进程.(调试错误)
- 配置 SQL Server 2005 远程调试存储过程
- VB、VC调用C++dll 函数、变量、类
- [转]VC 2008 远程调试
- 在c#中调用并调试C++的DLL
- 关于C++(VC2005)编译多一条JMP指令的问题,待解决
- vc远程调试启动进程(非attach)
- vc2005调试
- VS 2010 C++中调试DLL