通过


DkmProcessLaunchRequest.LaunchProcess 方法

定义

重载

LaunchProcess(DkmWorkList, Int32, DkmCompletionRoutine<DkmLaunchProcessAsyncResult>)

此 API 是 Win32 CreateProcess API 的远程版本。 实现将合并环境块、处理命令行重定向并启动进程。

此方法会将新工作项追加到指定工作列表,并在追加工作项后返回。 工作项的实际处理是异步的。 将通过完成例程通知调用方请求已完成。

LaunchProcess(DkmWorkList, DkmCompletionRoutine<DkmLaunchNonDebugProcessAsyncResult>)

LaunchProcess API 的此重载用于在不调试的情况下启动进程,并跟踪进程的生存期。 请注意,在不设置 DkmProcessLaunchModeFlags.NoDebug 标志或设置 CREATE_SUSPENDED Win32 标志的情况下调用此 API 是无效的。

此方法会将新工作项追加到指定工作列表,并在追加工作项后返回。 工作项的实际处理是异步的。 将通过完成例程通知调用方请求已完成。

此 API 是在 Visual Studio 16 Update 9 (DkmApiVersion.VS16Update9) 中引入的。

LaunchProcess()

LaunchProcess API 的此重载用于在不调试的情况下启动进程,并跟踪进程的生存期。 请注意,在不设置 DkmProcessLaunchModeFlags.NoDebug 标志或设置 CREATE_SUSPENDED Win32 标志的情况下调用此 API 是无效的。

此 API 是在 Visual Studio 16 Update 9 (DkmApiVersion.VS16Update9) 中引入的。

LaunchProcess(Int32)

此 API 是 Win32 CreateProcess API 的远程版本。 实现将合并环境块、处理命令行重定向并启动进程。

LaunchProcess(DkmWorkList, Int32, DkmCompletionRoutine<DkmLaunchProcessAsyncResult>)

此 API 是 Win32 CreateProcess API 的远程版本。 实现将合并环境块、处理命令行重定向并启动进程。

此方法会将新工作项追加到指定工作列表,并在追加工作项后返回。 工作项的实际处理是异步的。 将通过完成例程通知调用方请求已完成。

public void LaunchProcess(Microsoft.VisualStudio.Debugger.DkmWorkList WorkList, int AdditionalWin32Flags, Microsoft.VisualStudio.Debugger.DkmCompletionRoutine<Microsoft.VisualStudio.Debugger.Start.DkmLaunchProcessAsyncResult> CompletionRoutine);
member this.LaunchProcess : Microsoft.VisualStudio.Debugger.DkmWorkList * int * Microsoft.VisualStudio.Debugger.DkmCompletionRoutine<Microsoft.VisualStudio.Debugger.Start.DkmLaunchProcessAsyncResult> -> unit
Public Sub LaunchProcess (WorkList As DkmWorkList, AdditionalWin32Flags As Integer, CompletionRoutine As DkmCompletionRoutine(Of DkmLaunchProcessAsyncResult))

参数

WorkList
DkmWorkList

要向其追加新工作项的 WorkList。

AdditionalWin32Flags
Int32

[In]除了在 DkmProcessLaunchRequest.Win32Flags 中找到的标志外,还有 Win32 进程创建标志。 这通常用于传递DEBUG_PROCESS (0x1) 、DEBUG_ONLY_THIS_PROCESS (0x2) 或CREATE_SUSPENDED (0x4) 。

CompletionRoutine
DkmCompletionRoutine<DkmLaunchProcessAsyncResult>

请求完成时触发的例程。 如果请求成功追加到工作列表,则始终会触发 (包括何时取消操作) 。 如果追加工作项失败,则永远不会触发此操作。

适用于

LaunchProcess(DkmWorkList, DkmCompletionRoutine<DkmLaunchNonDebugProcessAsyncResult>)

LaunchProcess API 的此重载用于在不调试的情况下启动进程,并跟踪进程的生存期。 请注意,在不设置 DkmProcessLaunchModeFlags.NoDebug 标志或设置 CREATE_SUSPENDED Win32 标志的情况下调用此 API 是无效的。

此方法会将新工作项追加到指定工作列表,并在追加工作项后返回。 工作项的实际处理是异步的。 将通过完成例程通知调用方请求已完成。

此 API 是在 Visual Studio 16 Update 9 (DkmApiVersion.VS16Update9) 中引入的。

public void LaunchProcess(Microsoft.VisualStudio.Debugger.DkmWorkList WorkList, Microsoft.VisualStudio.Debugger.DkmCompletionRoutine<Microsoft.VisualStudio.Debugger.Start.DkmLaunchNonDebugProcessAsyncResult> CompletionRoutine);
member this.LaunchProcess : Microsoft.VisualStudio.Debugger.DkmWorkList * Microsoft.VisualStudio.Debugger.DkmCompletionRoutine<Microsoft.VisualStudio.Debugger.Start.DkmLaunchNonDebugProcessAsyncResult> -> unit
Public Sub LaunchProcess (WorkList As DkmWorkList, CompletionRoutine As DkmCompletionRoutine(Of DkmLaunchNonDebugProcessAsyncResult))

参数

WorkList
DkmWorkList

要向其追加新工作项的 WorkList。

CompletionRoutine
DkmCompletionRoutine<DkmLaunchNonDebugProcessAsyncResult>

请求完成时触发的例程。 如果请求成功追加到工作列表,则始终会触发 (包括何时取消操作) 。 如果追加工作项失败,则永远不会触发此操作。

适用于

LaunchProcess()

LaunchProcess API 的此重载用于在不调试的情况下启动进程,并跟踪进程的生存期。 请注意,在不设置 DkmProcessLaunchModeFlags.NoDebug 标志或设置 CREATE_SUSPENDED Win32 标志的情况下调用此 API 是无效的。

此 API 是在 Visual Studio 16 Update 9 (DkmApiVersion.VS16Update9) 中引入的。

public Microsoft.VisualStudio.Debugger.Start.DkmNonDebugProcess LaunchProcess();
member this.LaunchProcess : unit -> Microsoft.VisualStudio.Debugger.Start.DkmNonDebugProcess
Public Function LaunchProcess () As DkmNonDebugProcess

返回

[Out]DkmNonDebugProcess 表示在“启动但不调试” (Ctrl-F5) 方案中启动的进程。 它提供跟踪这些进程的生存期所需的功能。

适用于

LaunchProcess(Int32)

此 API 是 Win32 CreateProcess API 的远程版本。 实现将合并环境块、处理命令行重定向并启动进程。

public:
 Microsoft::VisualStudio::Debugger::Start::DkmLaunchedProcessInfo LaunchProcess(int AdditionalWin32Flags);
public:
 Microsoft::VisualStudio::Debugger::Start::DkmLaunchedProcessInfo LaunchProcess(int AdditionalWin32Flags);
Microsoft::VisualStudio::Debugger::Start::DkmLaunchedProcessInfo LaunchProcess(int AdditionalWin32Flags);
public Microsoft.VisualStudio.Debugger.Start.DkmLaunchedProcessInfo LaunchProcess(int AdditionalWin32Flags);
member this.LaunchProcess : int -> Microsoft.VisualStudio.Debugger.Start.DkmLaunchedProcessInfo
Public Function LaunchProcess (AdditionalWin32Flags As Integer) As DkmLaunchedProcessInfo

参数

AdditionalWin32Flags
Int32

[In]除了在 DkmProcessLaunchRequest.Win32Flags 中找到的标志外,还有 Win32 进程创建标志。 这通常用于传递DEBUG_PROCESS (0x1) 、DEBUG_ONLY_THIS_PROCESS (0x2) 或CREATE_SUSPENDED (0x4) 。

返回

[Out]DkmLaunchedProcessInfo 是从启动进程的 API 返回的。

适用于