C# Wie zu verwenden Verzeichnis Leerzeichen in den Prozess.Streit?
Programm erstellt-nutzt ein 3rd-party-tool, um eine Protokolldatei zu generieren.
Jedoch die Argumente für das tool erfordert, Dateien aus verschiedenen Verzeichnissen als Bestandteil bei der Generierung der Protokolle. Daher das wichtigste argument der @"-r C:\test\ftk\ntuser.dat -d C:\System Volume Information\" + restoreFolder.Name + " -p runmru";
würde verwendet werden zum generieren der Protokolle.
Kann jemand raten, wie man die Argumente der "C:\System Volume Information\" verarbeitet werden, indem das system mit dem weißen Leerzeichen gesetzt? Danke!
Codes:
Process process = new Process();
process.StartInfo.FileName = @"C:\test\ftk\ripxp\ripxp.exe";
process.StartInfo.Arguments = @"-r C:\test\ftk\ntuser.dat -d C:\System Volume Information\" + restoreFolder.Name + " -p runmru";
process.StartInfo.CreateNoWindow = false;
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardInput = true;
process.StartInfo.RedirectStandardError = true;
process.Start();
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie entkommen, die
"
durch Anhängen einer\
Ihnen (\"
) - für normale strings, oder verdoppeln Sie (""
) für verbatim-string-Literale (die beginnend mit@
):Wickeln, dass der Pfad in doppelte Anführungszeichen:
Vielleicht
sollte
Wenn ich das richtig verstanden, die Frage ist, können Sie wickeln den Namen mit Anführungszeichen:
Sie wirklich brauchen, um eine Zeichenfolge verwenden.- Format zusammen mit der Path-Klasse:
kann umgeschrieben werden zu viel Reiniger wie folgt: