Как запустить команду удаления через Process? - PullRequest
0 голосов
/ 10 февраля 2011

Это не работает, не может найти del.exe ...

        Process p = new Process();
        p.StartInfo.UseShellExecute = false;
        p.StartInfo.FileName = "del.exe";
        p.StartInfo.Arguments = "*.bak";
        p.Start();
        p.Close();

Ответы [ 2 ]

3 голосов
/ 10 февраля 2011

Вы делаете это неправильно.Вместо этого следует использовать метод File.Delete .

Пример кода:

string sourceDir = @"C:\Backups";   // change this to the location of the files
string[] bakList = Directory.GetFiles(sourceDir, "*.bak");

try
{
    foreach (string f in bakList)
    {
        File.Delete(f);
    }
}
catch (IOException ioex)
{
    // failed to delete because the file is in use
}
catch (UnauthorizedAccessException uaex)
{
    // failed to delete because file is read-only,
    // or user doesn't have permission
}
0 голосов
/ 10 февраля 2011

Если есть причина, по которой вы выбираете выполнение процесса над Directory.GetFiles в сочетании с File.Delete?

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