Код: Выделить всё
foreach (DirectoryInfo temp in toBeDeleted) {
filecheck.WriteLine(temp.Name);
Directory.Move(temp.FullName, @"T:\Transactiondeletions\" + counter + "\\" + temp.Name);
}
Однако при запуске программы я сталкиваюсь с ошибкой отказа в доступе.

Код: Выделить всё
T:У меня есть другой подключенный диск, U:, который находится на том же IP-адресе, что и 10.11.12.13\Data3$, и имеет точно такую же структуру каталогов.
Примечательно то, что моя программа отлично работает на диске U, но не на диске T. Я попробовал использовать букву диска в своем коде в качестве фактического полного пути с IP, и она по-прежнему работает нормально на диске U, но не на диске T.
На диске T всякий раз, когда моя программа пытается переместить папку, она получает сообщение «Доступ запрещен».
Однако все работает нормально, когда:
- Я перемещаю папку вручную вручную
- Я использую копию каталога + Directory.Delete вместо Directory.Move
Я думал, что это могло быть связано с тем, что StreamWriter все еще открыт (проверка файлов), но я уже пытался переместить эту часть кода до тех пор, пока не закрою StreamWriter, но возникают те же ошибки, поэтому я «исключил» такую возможность.
Любой совет буду очень признателен и буду рад предоставить любую дополнительную информацию, если это необходимо.
Подробнее здесь: https://stackoverflow.com/questions/433 ... nied-error
Мобильная версия