Freigeben über


System.Diagnostics.ProcessStartInfo.UseShellExecute-Eigenschaft

Dieser Artikel enthält ergänzende Hinweise zur Referenzdokumentation für diese API.

Die ProcessStartInfo Klasse gibt einen Satz von Werten an, die beim Starten eines Prozesses verwendet werden.

Durch Festlegen der UseShellExecute Eigenschaft false können Sie Eingabe-, Ausgabe- und Fehlerdatenströme umleiten.

Das Wort "shell" in diesem Kontext (UseShellExecute) bezieht sich auf eine grafische Shell (ähnlich der Windows-Shell) und nicht auf Befehlsshells (z bash . B. oder sh) und ermöglicht benutzern das Starten grafischer Anwendungen oder Öffnen von Dokumenten.

Hinweis

UseShellExecute muss sein false , wenn die UserName Eigenschaft nicht null oder eine leere Zeichenfolge ist oder eine InvalidOperationException Zeichenfolge ausgelöst wird, wenn die Process.Start(ProcessStartInfo) Methode aufgerufen wird.

Wenn Sie die Betriebssystemshell verwenden, um Prozesse zu starten, können Sie ein beliebiges Dokument starten (bei dem es sich um einen registrierten Dateityp handelt, der einer ausführbaren Datei zugeordnet ist, die eine Standardmäßige geöffnete Aktion enthält) und Vorgänge für die Datei ausführen, z. B. drucken, indem Sie das Process Objekt verwenden. Wenn UseShellExecute ja false, können Sie nur ausführbare Dateien mithilfe des Process Objekts starten.

Hinweis

UseShellExecute muss sein true , wenn Sie die ErrorDialog Eigenschaft auf true.

WorkingDirectory

Die WorkingDirectory Eigenschaft verhält sich je nach Dem Wert der UseShellExecute Eigenschaft anders. Wenn UseShellExecute dies der Wert ist true, gibt die WorkingDirectory Eigenschaft den Speicherort der ausführbaren Datei an. Wenn WorkingDirectory es sich um eine leere Zeichenfolge handelt, wird davon ausgegangen, dass das aktuelle Verzeichnis die ausführbare Datei enthält.

Ist UseShellExecute dies falseder Zeitpunkt, wird die WorkingDirectory Eigenschaft nicht verwendet, um die ausführbare Datei zu finden. Stattdessen wird er nur von dem gestarteten Prozess verwendet und hat nur im Kontext des neuen Prozesses Bedeutung. Ist UseShellExecute dies falseder Grund, kann die FileName Eigenschaft entweder ein vollqualifizierter Pfad zur ausführbaren Datei sein, oder ein einfacher ausführbarer Name, den das System versucht, in Ordnern zu suchen, die von der PATH Umgebungsvariable angegeben werden. Die Interpretation des Suchpfads hängt vom Betriebssystem ab. Geben Sie weitere Informationen ein, oder man sh geben Sie HELP PATH an einer Eingabeaufforderung ein.