2010-09-02 4 views
1

Можно создать дубликат:
How can I use Delphi to test if a Directory is writeable?Проверьте, есть ли у нас права на запись в папку? Delphi

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

Есть ли простой способ проверить, есть ли у нас права на запись в папке в Дели?

ответ

0

AccessCheck function или tricks, но this information is not reliable in generic case.

Итак, вам просто нужно создать файл для проверки, если у вас есть доступ для этого.

Для вашего конкретного случая, у вас есть следующие варианты:

  1. После диалога сохранение закрытия: попробуйте создать файл в целевой папке с имя загрузки файла. Удалить это после проверки. Не очень, так как редко могут иметь доступ для создания файлов , но не для их удаления.

  2. После закрытия диалогового окна сохранения: попробуйте создать файл в целевой папке с именем загрузки файла. Храните этот файл открытым и перемещайте содержимое файла до после завершения загрузки. Не симпатичный, так как вы не можете переместить файл, вам нужно его скопировать.

  3. (правый?) Просто принесите диалоговое окно сохранения на любой доступ, запрещенный.
Смежные вопросы