System.Diagnostics.Process - Del Command - PullRequest
       12

System.Diagnostics.Process - Del Command

1 голос
/ 29 марта 2010

Я пытаюсь запустить команду del, используя System.Diagnostic.Process. В основном я хочу удалить все с диска C: \ с именем файла * .bat

System.Diagnostics.Process proc = new System.Diagnostics.Process();
string args = string.Empty;
args += "*.bat";

proc.StartInfo.FileName = "del";
proc.StartInfo.WorkingDirectory = "C:\\";
proc.StartInfo.Arguments = args.TrimEnd();
proc.Start();

Однако при выполнении кода выдается исключение, «система не может найти указанный файл». Я знаю, что в этой корневой папке определенно есть файлы с таким расширением.

Ответы [ 3 ]

7 голосов
/ 29 марта 2010

«del» не является исполняемым файлом. Это команда, запускаемая интерпретатором команд, cmd.exe. Вместо запуска "del", запустите cmd.exe /c "del foo.txt".

2 голосов
/ 29 марта 2010

Вам не нужно запускать команду del. Вы можете удалить файлы из C #.

        var files = new DirectoryInfo("C:\\").GetFiles("*.bat");
        foreach (FileInfo fi in files)
        {
            fi.Delete();
        }
0 голосов
/ 29 марта 2010

del - это консольная команда, а не приложение, которое можно запустить с помощью класса Process.Есть ли причина, по которой вы идете этим путем вместо использования управляемых классов в пространстве имен System.IO?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...