DkmProcessLaunchRequest Klasse

Definition

Dkmprocesslaunchrequest wird verwendet, um den Prozess zu beschreiben, den der Debugger starten soll.

public ref class DkmProcessLaunchRequest : Microsoft::VisualStudio::Debugger::DkmDataContainer, IDisposable
[System.Runtime.InteropServices.Guid("7107fc56-3477-2708-fc00-174f33c04b08")]
public class DkmProcessLaunchRequest : Microsoft.VisualStudio.Debugger.DkmDataContainer, IDisposable
[<System.Runtime.InteropServices.Guid("7107fc56-3477-2708-fc00-174f33c04b08")>]
type DkmProcessLaunchRequest = class
    inherit DkmDataContainer
    interface IDisposable
Public Class DkmProcessLaunchRequest
Inherits DkmDataContainer
Implements IDisposable
Vererbung
DkmProcessLaunchRequest
Attribute
Implementiert

Eigenschaften

Arguments

Optionale Argumente, die an die ausführbare Datei in der Befehlszeile übergeben werden.

Connection

Dies stellt eine Verbindung zwischen dem Monitor und der IDE dar. Dabei kann es sich entweder um eine lokale Verbindung handeln, wenn der Monitor in demselben Prozess wie die IDE ausgeführt wird, oder um eine Remote Verbindung. Im Überwachungsprozess gibt es nur eine Verbindung.

DebugLaunchSettings

Einstellungen, die während eines Debugvorgangs starten von einem Projekt System oder einem anderen Aufrufer von launchdebugtargets (oder verschiedenen anderen Start-Debugging-APIs) bereitgestellt werden.

EngineSettings

Optionale Die Einstellungen, die beim Starten dieser ausführbaren Datei unter dem Debugger verwendet werden sollen. Dies wird möglicherweise ausgelassen, wenn der Prozess nicht unter dem Debugger gestartet wird (Beispiel: STRG + F5).

Environment

Optionale Ein Zeiger auf den Umgebungsblock für den neuen Prozess. Wenn dieser Parameter NULL ist, verwendet der neue Prozess die Umgebung des aufrufenden Prozesses.

Ein Umgebungsblock besteht aus einem null-terminierten Block von null-terminierten Zeichen folgen. Jede Zeichenfolge weist das folgende Format auf: "Name = value\0". Da das Gleichheitszeichen als Trennzeichen verwendet wird, darf es nicht im Namen einer Umgebungsvariablen verwendet werden.

FileName

Pfad zur ausführbaren Datei, die gestartet werden soll.

IsUnloaded

Gibt "true" zurück, wenn ein "entladen"-Ereignis für dieses Objekt ausgelöst wurde (Beispiel: dkmthread:: entladen wird aufgerufen) oder wenn das Objekt geschlossen wurde. Beachten Sie, dass bei der Überprüfung dieses Status, ohne Synchronisierung, der Status "zurückgegeben" möglicherweise nicht mehr genau der Anweisung entspricht, nachdem er gelesen wurde.

(Geerbt von DkmDataContainer)
LaunchFlags

Flags, die einer Anforderung zum Starten eines Prozesses zugeordnet sind.

         Diese API wurde in Visual Studio 14 RTM (dkmapiversion. VS14RTM) eingeführt.
ModeFlags

Markieren Sie die Merkmale einer dkmprocesslaunchrequest.

StartupInfo

Optionale Zusätzliche Informationen, die verwendet werden, um einen neuen Prozess zu starten. Diese Informationen sind in der ' STARTUPINFO '-Struktur in Win32 enthalten.

UniqueId

UniqueId identifiziert die Start Anforderung eindeutig.

Win32Flags

Beim Starten des Prozesses verwendete Win32-Prozesserstellungsflags. Beispielsweise kann CREATE_NO_WINDOW (0x08000000) zum Deaktivieren der Erstellung des Konsolenfensters übermittelt werden. Die folgenden Flags sollten nie übermittelt werden, und das Verhalten ist nicht definiert, wenn Sie vorhanden sind: DEBUG_PROCESS, DEBUG_ONLY_THIS_PROCESS, CREATE_SUSPENDED, EXTENDED_STARTUPINFO_PRESENT, CREATE_SEPARATE_WOW_VDM, CREATE_SHARED_WOW_VDM und CREATE_UNICODE_ENVIRONMENT.

WorkingDirectory

Der vollständige Pfad zum aktuellen Verzeichnis für den Prozess. Die Zeichenfolge kann auch einen UNC-Pfad angeben.

Methoden

Close()

Schließt eine dkmprocesslaunchrequest-Objektinstanz. Hierdurch werden alle Ressourcen freigegeben, die mit diesem Objekt für alle Komponenten verknüpft sind. Dies schließt Ressourcen Computer übergreifend oder verwaltete/native Marshalling-Grenzen ein.

Dkmprocesslaunchrequest-Objekte werden automatisch geschlossen, wenn das zugehörige dkmtransportconnection-Objekt geschlossen wird.

Diese Methode kann nur von der Komponente aufgerufen werden, die das Objekt erstellt hat.

Create(String, String, String, String, DkmProcessStartupInfo, DkmProcessLaunchModeFlags, Int32, DkmTransportConnection, DkmEngineSettings, DkmDebugLaunchSettings, DkmDataItem)

Erstellen Sie eine neue dkmprocesslaunchrequest-Objektinstanz. Der Aufrufer ist dafür verantwortlich, das erstellte Objekt zu schließen, nachdem es abgeschlossen wurde.

Create(String, String, String, String, DkmProcessStartupInfo, DkmProcessLaunchModeFlags, Int32, DkmTransportConnection, DkmEngineSettings, DkmDebugLaunchSettings, DkmProcessLaunchFlags, DkmDataItem)

Erstellen Sie eine neue dkmprocesslaunchrequest-Objektinstanz. Der Aufrufer ist dafür verantwortlich, das erstellte Objekt zu schließen, nachdem es abgeschlossen wurde.

Diese API wurde in Visual Studio 14 RTM (dkmapiversion. VS14RTM) eingeführt.

GetDataItem<T>()

Ruft die Instanz von 't ' ab, die dieser Container Instanz hinzugefügt wurde. Wenn dieser Container kein 't-Zeichen enthält, gibt diese Funktion NULL zurück.

(Geerbt von DkmDataContainer)
LaunchDebuggedProcess()

Bewirkt, dass der Debug-Monitor unter dem Debugger einen neuen Prozess erstellt. Der Prozess sollte angehalten werden, bis "resumedebuggedprocess" aufgerufen wird. Der Debug-Monitor muss vor dem Erstellen des dkmprocess-Objekts auf "resumedebuggedprocess" warten, da der uniqueprocessid-Wert von der AD7-Ebene benötigt wird.

Beachten Sie, dass diese Methode nur als Reaktion auf das Visual Studio-Debugger-Paket aufgerufen werden kann, das einen Start anfordert. Komponenten, die einen anderen Prozess unter dem Debugger starten möchten, sollten ein benutzerdefiniertes Ereignis an ein Visual Studio-Paket senden. Aus einem Paket kann ein Start über die ivsdebugger. launchdebugtargets-API angefordert werden.

LaunchProcess(Int32)

Bei dieser API handelt es sich um eine Remote fähige Version der Win32-API. Die-Implementierung führt den Umgebungsblock zusammen, verarbeitet die Befehlszeilen Umleitung und startet den Prozess. Wenn das NoDebug-Flag nicht verwendet wird, verwendet "kreateprocess" das DEBUG_PROCESS-Flag, wenn der Win32-Prozess erstellt wird.

RemoveDataItem<T>()

Entfernen Sie die Instanz von 't "aus diesem Container. Es ist in der Regel nicht erforderlich, diese Methode aufzurufen, da ein Datencontainer automatisch geleert wird, wenn das Objekt geschlossen wird.

(Geerbt von DkmDataContainer)
ResumeDebuggedProcess(Guid)

Bewirkt, dass der Debug-Monitor einen gestarteten Prozess fort setzt und das dkmprocess-Objekt erstellt. Das dkmprocess-Objekt wird im Ereignis Thread erstellt, und beim Erstellen des Objekts wird ein Prozess Erstellungs Ereignis gesendet.

Beachten Sie, dass diese Methode nur als Reaktion auf das Visual Studio-Debugger-Paket aufgerufen werden kann, das einen Start anfordert. Komponenten, die einen anderen Prozess unter dem Debugger starten möchten, sollten ein benutzerdefiniertes Ereignis an ein Visual Studio-Paket senden. Aus einem Paket kann ein Start über die ivsdebugger. launchdebugtargets-API angefordert werden.

ResumeProcess()

Diese API wird verwendet, um einen Prozess fortzusetzen, der von "up Process" gestartet wurde, wobei das Flag "launchangeh alten" auf true festgelegt ist

ResumeProcess(DkmProcess)

Diese API wird verwendet, um einen Prozess fortzusetzen, der von "up Process" gestartet wurde, wobei das Flag "launchangeh alten" auf true festgelegt ist

Diese API wurde in Visual Studio 15 Update 3 (dkmapiversion. VS15Update3) eingeführt.

SetDataItem<T>(DkmDataCreationDisposition, T)

Fügen Sie ein neues Element in den Datencontainer ein.

(Geerbt von DkmDataContainer)

Explizite Schnittstellenimplementierungen

IDisposable.Dispose()

Muss hinzugefügt werden.

Gilt für