2017-07-21 8 views
-5

Sorry nicht so vertraut mit C#. Warum bekomme ich den folgenden Fehler?"DirectoryNotFoundException: Konnte einen Teil des Pfades nicht finden"

var workingDirectory = "C:\\Program Files(x86)"; 

Directory.SetCurrentDirectory(workingDirectory); 

Fehler in Zeile Directory.SetCurrentDirectory(workingDirectory);

eine Ausnahme
"DirectoryNotFoundException: Es kann keinen Teil des Weges finden" Wirf

+1

Kopie fügen Sie den Pfad in Windows Explorer (Datei-Explorer) und sehen, ob es den Weg finden kann. Überprüfen Sie auch das Vorhandensein von Dateien und Ordnern, bevor Sie zB: 'if (Directory.Exists (workingDirectory)) ... else // handle it' – TheVillageIdiot

Antwort

0

Es gibt einen Raum zwischen Dateien und x86. Versuchen Sie

var workingDirectory = @"C:\Program Files (x86)"; 
+0

Ich weiß, dass es ein Leerzeichen gibt, aber das ist der Standardpfad im Windows-Verzeichnis für Programmdateien. – Yves

+0

@Yves Aber Ihr Code hat kein Leerzeichen im Pfad, daher kann das Verzeichnis nicht gefunden werden. – Xiaosu

3

Möchten Sie den Ordner "Special"?

string WorkingDirectory = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86) 

Oder eigentlich tun, das Ganze in einer Zeile:

Directory.SetCurrentDirectory(Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86)); 
+0

Eine viel bessere und elegantere Lösung als der Versuch, magische Saiten zu verwenden. – DeeKayy90

Verwandte Themen