IDebugEngineLaunch2::LaunchSuspended
Diese Methode startet einen Prozess mithilfe des Debugmoduls (DE).
HRESULT LaunchSuspended (
LPCOLESTR pszMachine,
IDebugPort2* pPort,
LPCOLESTR pszExe,
LPCOLESTR pszArgs,
LPCOLESTR pszDir,
BSTR bstrEnv,
LPCOLESTR pszOptions,
LAUNCH_FLAGS dwLaunchFlags,
DWORD hStdInput,
DWORD hStdOutput,
DWORD hStdError,
IDebugEventCallback2* pCallback,
IDebugProcess2** ppDebugProcess
);
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
);
Parameter
pszMachine
[in] Der Name des Computers, auf dem der Prozess gestartet werden soll. Verwenden Sie einen NULL-Wert, um den lokalen Computer anzugeben.pPort
[in] Die IDebugPort2-Schnittstelle, die den Anschluss darstellt, den das Programm ausgeführt wird.pszExe
[in] Der Name der ausführbaren Datei ausgeführt werden soll.pszArgs
[in] Die zur ausführbaren Datei zu übergebenden Argumente. Kann ein NULL-Wert, wenn keine Argumente vorhanden sind.pszDir
[in] Der Name des Arbeitsverzeichnisses Verwendung durch die ausführbare Datei. Kann ein NULL-Wert, wenn kein Arbeitsverzeichnis erforderlich ist.bstrEnv
[in] Umgebungsblock auf NULL endende Zeichenfolge, gefolgt von einem zusätzlichen NULL-Abschlusszeichen.pszOptions
[in] Die Optionen für die ausführbare Datei.dwLaunchFlags
[in] Gibt LAUNCH_FLAGS für eine Sitzung an.hStdInput
[in] Handle für einen alternativen Eingabestream. Kann 0, wenn Umleitungen nicht erforderlich ist.hStdOutput
[in] Handle für einen alternativen Ausgabestream. Kann 0, wenn Umleitungen nicht erforderlich ist.hStdError
[in] Handle für einen alternativen Fehler ausgabedatenstrom. Kann 0, wenn Umleitungen nicht erforderlich ist.pCallback
[in] Das Objekt, das IDebugEventCallback2 Debuggerereignisse empfängt.ppDebugProcess
[out] Gibt das resultierende IDebugProcess2-Objekt zurück, das den aufgerufenen Prozess darstellt.
Rückgabewert
Bei Erfolg gibt S_OKzurück. andernfalls gibt einen Fehlercode zurück.
Hinweise
Normalerweise startet Visual Studio ein Programm mit der IDebugPortEx2::LaunchSuspended-Methode und fügt dann den Debugger an den angehaltenen Programm an. Es gibt jedoch Umstände, unter denen das Debugmodul möglicherweise ein Programm starten muss (beispielsweise, wenn das Debugmodul ist, ist Teil eines Interpreters und des Programms, das gedebuggt wird, eine interpretierte Sprache). In diesem Fall Visual Studio verwendet die IDebugEngineLaunch2::LaunchSuspended-Methode.
Die IDebugEngineLaunch2::ResumeProcess-Methode wird aufgerufen, um den Prozess gestartet wird, nachdem der Vorgang erfolgreich in einem Ruhezustand gestartet wurde.