我的申请有点问题。应用程序在首次运行时将SQLite数据库存储在C:\ProgramData\ProgramName\
文件夹中。我想测试一下,如果删除数据库,应用程序是否可以创建一个新的数据库。在启动时,我使用SysUtils中的FileExists(filename)
函数检查文件是否存在。但即使我删除了ProgramName文件夹,它也总是返回True。
如果我使用其他文件夹(例如%AppData%),则一切正常。
我在这里缺少什么?为什么FileExists函数总是返回True?
答案 0 :(得分:2)
标准用户(包括UAC处于活动状态时的管理员)对该位置没有删除权限。
如果您需要标准用户才能删除文件,则需要找到另一个存储文件的位置。