http://msdn.microsoft.com/zh-cn/library/ms123401.aspx

选择启动项目

  1. 在“解决方案资源管理器”中,右击项目名,然后在快捷菜单上单击“设为启动项目”。

  2. 如果要调试不止一个项目,可以选择多个启动项目。

选择多个启动项目

  1. 在“解决方案资源管理器”中,右击此解决方案名并在快捷菜单上单击“属性”。

    出现“解决方案属性页”对话框。

  2. 在“解决方案属性页”对话框中,选择“多启动项目”选项。

  3. 在“多启动项目”下是一个具有两列的网格,两列分别是“项目”和“操作”。在“操作”列中:

    1. 对于每个要调试的项目,请单击“操作”列,并选择“启动”。

    2. 对于要在不调试的情况下运行的项目,请单击“操作”列,并选择“启动(不调试)”。

    3. 对于不想运行的项目,请单击“操作”列,并选择“无”。

  4. 单击“确定”。

调试多个进程

  利用 Visual Studio 调试器,可以调试运行在多个进程中的程序。进程是运行在自己的内存空间中并具有自己的目标代码、数据和资源的程序实例。例如,当通过启动 .EXE 文件启动一个程序时,系统调度器就为该程序创建一个新的进程。如果启动多个程序实例,就会创建多个进程。出于其自身目的,操作系统会自动创建其他进程(即系统进程)。

  某些程序,如脚本应用程序,没有自己的进程。这些程序驻留在其他应用程序(如 Internet Explorer 或 Internet 信息服务)之中,并在宿主进程中运行。要调试此类程序,必须调试宿主进程。通常先要附加到宿主进程。

  使用 Visual Studio 调试器,可以在一个 Visual Studio 解决方案中调试多个进程。这时,每一个进程都是由解决方案中的一个独立项目创建的,因此可以看作是调试多个项目。可以通过设置多个启动项目来调试多个进程,也可以先开始调试一个项目,然后从“解决方案资源管理器”中启动其他项目。请参见选择启动项。

  若要从调试一个进程切换到调试另一个进程,请使用“调试位置”工具栏。

如何:调试多个进程

启动其他的项目

当一个项目正在运行时启动另一个,要求这两个项目必须是在同一个解决方案中。可以利用“解决方案资源管理器”启动一个或多个其他的项目:

在“解决方案资源管理器”中启动项目

  1. 在“解决方案资源管理器”中,选择要开始调试的项目。

  2. 右击项目名称或图标。

  3. 从快捷菜单中选择“调试”,然后单击“启动新实例”或“进入并单步执行新实例”。

在运行的项目间切换

当在一个解决方案中调试两个以上项目时,可以以下面两种方式之一在其间切换:

调试过程中在项目之间切换

  1. 如果“调试位置”工具栏不可见:

    1. 从“工具”菜单中选择“自定义”。

    2. 在“自定义”属性表中,选择“工具栏”选项卡,然后选择“调试位置”。

    3. 单击“确定”。

  2. 在“调试位置”工具栏上,使用“程序”列表框选择要切换到的程序。

切换到一个项目将使其成为用于调试目的的当前进程。所查看的任何调试器窗口都将显示当前进程的状态。

默认情况下,中断当前进程会中断正在调试的所有进程。您可以更改此默认行为,以便只中断当前进程,而其他进程继续运行。

更改进程中断行为

仅停止当前进程

  1. 从“工具”菜单中选择“选项”。

  2. 在“选项”对话框中,打开“调试”文件夹,然后选择“常规”类别。

  3. 切换“一个进程中断时则中断所有进程”选项。

  4. 单击“确定”。

VS2010调试多进程的更多相关文章

  1. VS2010调试多进程--医疗His调试中使用

    有些时候碰到自己开发的程序嵌入到别人的框架中,而在接口的地方出了问题,而又不方便将自己的模快加入到别人的工程中这个时候VS的附加到进程调试变得不可或缺了,直奔主题 http://msdn.micros ...

  2. vs2010 调试快捷键

    vs2010 调试快捷键   命令名 快捷键 说明 调试.应用代码更改 Alt + F10 启动生成操作,利用它可以通过“编辑并继续”功能应用对正在调试的代码所作的更改. 调试.自动窗口 Ctrl + ...

  3. Gdb调试多进程程序

    Gdb调试多进程程序 程序经常使用fork/exec创建多进程程序.多进程程序有自己独立的地址空间,这是多进程调试首要注意的地方.Gdb功能强大,对调试多线程提供很多支持. 方法1:调试多进程最土的办 ...

  4. VS2010调试C程序,总是一闪而过

    今天在vs2010调试C语言程序的时候,一闪而过,百度上搜了三种解决的方法,都是可以用的. 1.   #include<iostream> using namespace std; int ...

  5. gdb调试多进程和多线程命令

     gdb调试多进程和多线程命令 来源:http://blog.csdn.net/pbymw8iwm/article/details/7876797 1. 默认设置下,在调试多进程程序时GDB只会调试主 ...

  6. 使用 GDB 调试多进程程序

    使用 GDB 调试多进程程序 GDB 是 linux 系统上常用的调试工具,本文介绍了使用 GDB 调试多进程程序的几种方法,并对各种方法进行比较. 3 评论 田 强 (tianq@cn.ibm.co ...

  7. gdb常用命令及使用gdb调试多进程多线程程序

    一.常用普通调试命令 1.简单介绍GDB 介绍: gdb是Linux环境下的代码调试⼯具.使⽤:需要在源代码⽣成的时候加上 -g 选项.开始使⽤: gdb binFile退出: ctrl + d 或 ...

  8. gdb常用命令及gdb调试多进程/线程程序&coredump

    一.常用普通调试命令 1.简单介绍GDB 介绍: gdb是Linux环境下的代码调试⼯具.使⽤:需要在源代码⽣成的时候加上 -g 选项.开始使⽤: gdb binFile退出: ctrl + d 或 ...

  9. gdb调试多进程多线程程序

    一.调试的指令 1.list命令 list linenum 显示程序第linenum行的周围的程序 list function 显示程序名为function的函数的源程序 list 显示当前行后面的源 ...

随机推荐

  1. 一文学会用 Tensorflow 搭建神经网络

    http://www.jianshu.com/p/e112012a4b2d 本文是学习这个视频课程系列的笔记,课程链接是 youtube 上的,讲的很好,浅显易懂,入门首选, 而且在github有代码 ...

  2. 浅谈 Adaboost 算法

    http://blog.csdn.net/haidao2009/article/details/7514787 菜鸟最近开始学习machine learning.发现adaboost 挺有趣,就把自己 ...

  3. Mongo = get size of single document

      Object.bsonsize(db.test.findOne({type:"auto"}))

  4. CSOM中如何取到managed metadata类型字段的类型信息

    Field.fieldTypeKind返回的是Invalid [解决方法] There is no "Metadata" type of field in the SP.Field ...

  5. sql存储过程加密和解密(MSSQL)

    在网络上,看到有SQL Server 2000和SQL Server 2005 的存储过程加密和解密的方法,后来分析了其中的代码,发现它们的原理都是一样的.后来自己根据实际的应用环境,编写了两个存储过 ...

  6. [Git] Undo my last commit and split it into two separate ones

    When you accidentally committed some changes to your branch you have various possibilities to “undo” ...

  7. Discuz!X/数据库操作方法

    原DB类的改进 Discuz! X2.5新版对数据库DB层进行了功能和安全方面的加强: addslashes的处理 仅insert(),update(),delete() 方法对传入其的数组形式的参数 ...

  8. 如何随机获取数据库不连续ID的数据?

    这个问题的来由是我朋友要为一网站实现一个标签云功能,和我交流后我给出了一个方案,在此略作记录,亦求拍砖. 大概需求这是样的: 在数据库有一张表A如下图: 其中id字段的值未必是连续的,现在我朋友要做的 ...

  9. NIO SelectionKey attachment()空指针错误

    Channel注册到Selector时添加了一个Object: serverSocketChannel1.register(selector, SelectionKey.OP_ACCEPT, num[ ...

  10. Ubuntu安装rabbitMq

    笔者ubuntu版本为Ubuntu 15.10,查看ubuntu当前版本命令:cat /etc/issue. 由于rabbitMq需要erlang语言的支持,在安装rabbitMq之前需要安装erla ...