VS2010调试多进程
http://msdn.microsoft.com/zh-cn/library/ms123401.aspx
选择启动项目
-
在“解决方案资源管理器”中,右击项目名,然后在快捷菜单上单击“设为启动项目”。
-
如果要调试不止一个项目,可以选择多个启动项目。
选择多个启动项目
-
在“解决方案资源管理器”中,右击此解决方案名并在快捷菜单上单击“属性”。
出现“解决方案属性页”对话框。
-
在“解决方案属性页”对话框中,选择“多启动项目”选项。
-
在“多启动项目”下是一个具有两列的网格,两列分别是“项目”和“操作”。在“操作”列中:
-
对于每个要调试的项目,请单击“操作”列,并选择“启动”。
-
对于要在不调试的情况下运行的项目,请单击“操作”列,并选择“启动(不调试)”。
-
对于不想运行的项目,请单击“操作”列,并选择“无”。
-
-
单击“确定”。
调试多个进程
利用 Visual Studio 调试器,可以调试运行在多个进程中的程序。进程是运行在自己的内存空间中并具有自己的目标代码、数据和资源的程序实例。例如,当通过启动 .EXE 文件启动一个程序时,系统调度器就为该程序创建一个新的进程。如果启动多个程序实例,就会创建多个进程。出于其自身目的,操作系统会自动创建其他进程(即系统进程)。
某些程序,如脚本应用程序,没有自己的进程。这些程序驻留在其他应用程序(如 Internet Explorer 或 Internet 信息服务)之中,并在宿主进程中运行。要调试此类程序,必须调试宿主进程。通常先要附加到宿主进程。
使用 Visual Studio 调试器,可以在一个 Visual Studio 解决方案中调试多个进程。这时,每一个进程都是由解决方案中的一个独立项目创建的,因此可以看作是调试多个项目。可以通过设置多个启动项目来调试多个进程,也可以先开始调试一个项目,然后从“解决方案资源管理器”中启动其他项目。请参见选择启动项。
若要从调试一个进程切换到调试另一个进程,请使用“调试位置”工具栏。
如何:调试多个进程
启动其他的项目
当一个项目正在运行时启动另一个,要求这两个项目必须是在同一个解决方案中。可以利用“解决方案资源管理器”启动一个或多个其他的项目:
在“解决方案资源管理器”中启动项目
-
在“解决方案资源管理器”中,选择要开始调试的项目。
-
右击项目名称或图标。
-
从快捷菜单中选择“调试”,然后单击“启动新实例”或“进入并单步执行新实例”。
在运行的项目间切换
当在一个解决方案中调试两个以上项目时,可以以下面两种方式之一在其间切换:
调试过程中在项目之间切换
-
如果“调试位置”工具栏不可见:
-
从“工具”菜单中选择“自定义”。
-
在“自定义”属性表中,选择“工具栏”选项卡,然后选择“调试位置”。
-
单击“确定”。
-
-
在“调试位置”工具栏上,使用“程序”列表框选择要切换到的程序。
切换到一个项目将使其成为用于调试目的的当前进程。所查看的任何调试器窗口都将显示当前进程的状态。
默认情况下,中断当前进程会中断正在调试的所有进程。您可以更改此默认行为,以便只中断当前进程,而其他进程继续运行。
更改进程中断行为
仅停止当前进程
-
从“工具”菜单中选择“选项”。
-
在“选项”对话框中,打开“调试”文件夹,然后选择“常规”类别。
-
切换“一个进程中断时则中断所有进程”选项。
-
单击“确定”。