【发布时间】:2011-04-07 14:02:31
【问题描述】:
可能重复:
How can I use Delphi to test if a Directory is writeable?
如果用户请求,我的程序将为用户下载更新。用户必须指定保存安装程序的位置。他们可能会选择一个他们无权保存内容的目录。在这种情况下,下载开始(我假设下载到一个临时目录),我们只知道它在结束时失败并尝试将文件移动到文件夹中。
有没有一种简单的方法可以检查我们是否对德里的文件夹具有写入权限?
【问题讨论】:
可能重复:
How can I use Delphi to test if a Directory is writeable?
如果用户请求,我的程序将为用户下载更新。用户必须指定保存安装程序的位置。他们可能会选择一个他们无权保存内容的目录。在这种情况下,下载开始(我假设下载到一个临时目录),我们只知道它在结束时失败并尝试将文件移动到文件夹中。
有没有一种简单的方法可以检查我们是否对德里的文件夹具有写入权限?
【问题讨论】:
有AccessCheck function或tricks,但this information is not reliable in generic case。
所以,通常你只需要创建文件来检查,如果你有访问权限。
针对您的具体情况,您有以下选择:
保存对话框关闭后:尝试 在目标文件夹中创建一个文件 下载文件的名称。删除 检查后。不漂亮,因为 你很少可能有权创建 文件,但不要删除它们。
保存对话框关闭后:尝试创建一个 目标文件夹中的文件,名称为 的下载文件。保持那个 处理打开并将文件内容移动到 下载完成后即可。不是 漂亮,因为你不能移动文件, 你需要复制它。
【讨论】: