При добавлении / удалении из zip-файла не удается найти временные файлы - PullRequest
1 голос
/ 13 марта 2009

Моя программа позволяет пользователям добавлять файлы в zip-файл по одной за раз. Первая загрузка создает zip-файл, а последующая загрузка добавляет к созданному файлу. Он также отображает список всех файлов в zip-файле и позволяет пользователям удалять отдельные файлы.

Я использую SharpZipLib, и это прекрасно работает на моем локальном компьютере, но как только я загрузил его на сервер, он начал падать при CommitUpdate ()

Оригинальная загрузка, которая создает zip-файл, в порядке, но добавление в zip-файл или удаление из него дает:

Не удалось найти файл 'W: \ MyZipFile.zip.151.tmp'.

Если я на время оставлю окно в покое, я могу удалить один файл или добавить один файл, прежде чем ошибка снова начнется.

Мой метод добавления файла:

ZipFile z = null;
if (System.IO.File.Exists(filePath + zipFilename))
     z = new ZipFile(File.OpenRead(filePath + zipFilename));
else
     z = ZipFile.Create(filePath + zipFilename);
z.BeginUpdate();
z.Add(filePath + filename, filename);
z.CommitUpdate();
z.Close();

Ответы [ 2 ]

1 голос
/ 16 марта 2009

Я понял это. Я забыл закрыть ZipFile после того, как отобразил список файлов в zip-файле. Это заблокировало почтовый индекс и не позволило мне редактировать, пока не истечет время ожидания.

0 голосов
/ 13 марта 2009

Необходимо убедиться, что любой пользователь, под которым запущено приложение, имеет разрешения NTFS для создания и изменения файлов в папке, обозначенной filepath

...