IDebugEngineLaunch2::LaunchSuspended

此方法通过调试引擎(DE)启动进程。

语法

int LaunchSuspended(
   string               pszServer,
   IDebugPort2          pPort,
   string               pszExe,
   string               pszArgs,
   string               pszDir,
   string               bstrEnv,
   string               pszOptions,
   enum_LAUNCH_FLAGS    dwLaunchFlags,
   uint                 hStdInput,
   uint                 hStdOutput,
   uint                 hStdError,
   IDebugEventCallback2 pCallback,
   out IDebugProcess2   ppProcess
);

参数

pszMachine
[in]要在其中启动进程的计算机的名称。 使用 null 值指定本地计算机。

pPort
[in] 表示程序将在其中运行的端口的 IDebugPort2 接口。

pszExe
[in]要启动的可执行文件的名称。

pszArgs
[in]要传递给可执行文件的参数。 如果没有参数,则为 null 值。

pszDir
[in]可执行文件使用的工作目录的名称。 如果不需要工作目录,则可为 null 值。

bstrEnv
[in]以 NULL 结尾的字符串的环境块,后跟一个额外的 NULL 终止符。

pszOptions
[in]可执行文件的选项。

dwLaunchFlags
[in]指定 会话的LAUNCH_FLAGS

hStdInput
[in]备用输入流的句柄。 如果不需要重定向,则为 0。

hStdOutput
[in]备用输出流的句柄。 如果不需要重定向,则为 0。

hStdError
[in]处理备用错误输出流。 如果不需要重定向,则为 0。

pCallback
[in] 接收调试器事件的 IDebugEventCallback2 对象。

ppDebugProcess
[out]返回表示启动进程的生成的 IDebugProcess2 对象。

返回值

如果成功,则返回 S_OK;否则,返回错误代码。

备注

通常,Visual Studio 使用 LaunchSuspended 方法启动程序,然后将调试器附加到挂起的程序。 但是,在某些情况下,调试引擎可能需要启动程序(例如,如果调试引擎是解释器的一部分,并且所调试的程序是解释语言),在这种情况下,Visual Studio 使用 IDebugEngineLaunch2::LaunchSuspended 该方法。

调用 ResumeProcess 方法以在进程成功启动处于挂起状态后启动进程。

另请参阅