我在 VS2008 中创建了一个安装项目。此设置将一些文件夹/文件复制到程序文件文件夹。此外,它还添加了一些 windows 环境变量。在安装过程中,我被要求在 UAC 对话框中确认某些内容。这工作正常,所有文件都被复制。
当我的程序运行时问题就开始了,我必须修改文件的内容。抛出异常,说我没有权限。另外,如果我尝试在 Windows 资源管理器中执行相同的操作 => 相同的问题。
我的问题是:如果我有权在程序文件文件夹中安装我的软件,我不应该也可以在这个文件夹中写入吗?
我在 VS2008 中创建了一个安装项目。此设置将一些文件夹/文件复制到程序文件文件夹。此外,它还添加了一些 windows 环境变量。在安装过程中,我被要求在 UAC 对话框中确认某些内容。这工作正常,所有文件都被复制。
当我的程序运行时问题就开始了,我必须修改文件的内容。抛出异常,说我没有权限。另外,如果我尝试在 Windows 资源管理器中执行相同的操作 => 相同的问题。
我的问题是:如果我有权在程序文件文件夹中安装我的软件,我不应该也可以在这个文件夹中写入吗?
好吧,这似乎是一个普遍的权限问题。默认情况下,普通用户(和应用程序)无法写入 %PROGRAMFILES%。有专门为应用程序数据存储提供的文件夹,例如ApplicationData
安装程序确实安装到程序文件中的原因是因为 Windows Installer 的这种默认行为。检查此链接以获取有关 Windows 安装程序和 clickonce 设置的更多信息