IVsSolutionBuildManager2.QueryDebugLaunch(UInt32, Int32) 方法

定义

确定是否应启用 F5 (调试启动) 密钥。

public:
 int QueryDebugLaunch(System::UInt32 grfLaunch, [Runtime::InteropServices::Out] int % pfCanLaunch);
int QueryDebugLaunch(unsigned int grfLaunch, [Runtime::InteropServices::Out] int & pfCanLaunch);
public int QueryDebugLaunch (uint grfLaunch, out int pfCanLaunch);
abstract member QueryDebugLaunch : uint32 * int -> int
Public Function QueryDebugLaunch (grfLaunch As UInteger, ByRef pfCanLaunch As Integer) As Integer

参数

grfLaunch
UInt32

中指定调试器的启动方式。 有关更多信息,请参见__VSDBGLAUNCHFLAGS

pfCanLaunch
Int32

弄一个指针,它指向指示调试操作是否可以启动的标志。

返回

Int32

如果该方法成功,则它会返回 S_OK。 如果该方法失败,则会返回错误代码。

实现

注解

COM 签名

从 vsshell:

HRESULT IVsSolutionBuildManager2::QueryDebugLaunch(  
   [in] VSDBGLAUNCHFLAGS grfLaunch,  
   [out] BOOL *pfCanLaunch  
);  

解决方案生成管理器跟踪哪个项目是启动项目。 环境的调试器管理器组件不直接知道启动项目是什么,因此,它会调用 QueryDebugLaunch 以询问解决方案生成管理器是否应为启动项目启用 F5 键,或者如果设置了,则为所选项目 DBGLAUNCH_Selected

然后,如果用户按下 F5 键,则该环境的调试器管理器组件将再次调用此方法,并 DebugLaunch 将设置 pfCanLaunchtrue 。 然后,在 DebugLaunch 按下 F5 键时,为活动解决方案配置选择的启动项目的配置会启动相应的调试器进程。

F5 命令导致环境的调试器管理器组件 DebugLaunch 在每个启动项目上调用,对于活动的项目配置 (由活动解决方案配置) 选择,或捕获该命令的任何其他包。

当用户按下 F5 键时,环境的调试器管理器组件将进入调试模式,并调用,该调用会在 DebugLaunch DebugLaunch 每个启动项目的活动项目配置中,通过活动项目配置 (s) 查询投影仪项目的实现。 当环境处于调试模式时,要调试的一个或哪些项目知道进程的状态,即它是在运行还是在断点处。 在调试过程中到达断点时,环境的调试器管理器组件将调用 QueryDebugLaunch 并启用 F5 键 with Continue

在环境退出调试模式的点上,因为它已完成或已被用户取消,并且您已恢复设计模式,因此将启用 F5 键。

QueryDebugLaunchDebugLaunch通常仅由环境的 "调试管理器" 组件调用,以在设计模式下用于确定是否应启用调试启动时管理调试启动命令。 如果启用,则在按下 F5 键时,环境的 "调试管理器" 组件会调用 DebugLaunch 以启动启动项目列表中每个项目的调试进程。

如果没有解决方案的启动项目,则将禁用 F5 键。

适用于