0

我有一个需要以正常权限运行的应用程序。因此它安装在 Environment.SpecialFolder.ProgramFiles 中,但将 conf/logging/history 详细信息存储在 Environment.SpecialFolder.LocalApplicationData 中。

问题是在设置/部署项目中,在文件系统部分中,我无法区分 ApplicationData(漫游)或 LocalApplicationData,只有“用户的应用程序数据文件夹”,这可能取决于谁将它安装在什么机器上.

是否可以强制“用户的应用程序数据”为其中之一?

4

2 回答 2

1

MSI确实支持本地应用程序数据文件夹。如果您正在谈论安装和部署项目,那么可能需要切换到另一个安装程序框架(如WiX)。(无论如何,Visual Studio 2012 中不再存在安装和部署)。WiX 有一个名为Dark的工具,可以将 MSI 转换为 WiX XML 文件,因此您可以简单地编辑它们或快速轻松地添加到它们。

于 2012-09-04T15:18:21.707 回答
0

安装项目在 Visual Studio 2015 中卷土重来。以下适用于 VS 2015:

  • 在文件系统视图中,添加一个“自定义”类型的特殊文件夹。
  • 在此文件夹的属性中,设置以下值:
    • 名称:本地应用数据文件夹
    • 始终创建:真
    • 条件:(留空)
    • 默认位置:[LocalAppDataFolder]
    • 属性:SOMEPROPERTYNAME

The magic happen thanks to DefaultLocation property value: [LocalAppDataFolder].
I suppose any system folder variable as defined in the following link should work: https://msdn.microsoft.com/en-us/library/windows/desktop/aa370905(v=vs.85).aspx#system_folder_properties

于 2018-04-27T11:20:08.790 回答