|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
02.07.2011, 00:07 | #1 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
Проверить, можно ли заменить/удалить файл...
Доброго времени суток!
Есть файл, который закачвается на ПК. Скачаный файл сохраняется с расширением .new А старый файл нужно заменить новым. Но перед тем как заменить/удалить нужно проверить, не занят ли он чем-либо. Вот как я это придумал, пока что: Код:
|
02.07.2011, 00:17 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
поверьте, это итак довольно просто
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
02.07.2011, 00:30 | #3 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
т.е. если файл занят то deleteFile или RenameFile вернут false?
|
02.07.2011, 00:34 | #4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Есть вероятность, что удалить сможете, а переименовать нет - новый файл теоретически тоже може быть занят.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
02.07.2011, 00:36 | #5 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
да.
ну вообще поидее не совсем если занят, а если не удалось переименновать/удалить(а может доступа нет у вас) Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
02.07.2011, 00:38 | #6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Надежней, но дольше - открыть монопольно старый на запись, новый на чтение и переписать из нового в старый и только после этого новый удалить
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 02.07.2011 в 00:41. |
02.07.2011, 00:42 | #7 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
ну там можно одной строчкой тогда уж и через:
MoveFileEx http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Заменить существующий файл. | agregator | Microsoft Office Excel | 3 | 08.11.2010 09:37 |
WinInet загрузить файл во временной файл , использовать, потом удалить | Человек_Борща | Работа с сетью в Delphi | 5 | 03.08.2010 13:46 |
Проверить можно ли вписать в прямоугольный треугольник | QuadroX | Помощь студентам | 5 | 25.09.2009 13:58 |
Чем можно заменить конструкцию? Или как быть ? | kitovras | Microsoft Office Excel | 3 | 12.08.2009 15:31 |
Чем можно заменить объект BitBtn? | frai | Компоненты Delphi | 3 | 14.04.2007 12:42 |