程序文件中的安装路径:一些问题
Installation path in ProgramFiles : some concerns
我正在开发一款使用Qt 5 C++的Windows(XP至10及更高版本)软件。截至目前,默认安装路径为C:UsersPublicKontiki
. 但是,我读到这可能不是一个好的做法,我应该将其安装在C:ProgramFilesKontiki
. 这就是我打算做的。
但是,我有两个主要的担忧。
关注点 1
我的安装文件夹中的文件包括.exe、.dll和文档。 但是,它还包括用户参数(.txt文件)。用户必须能够在我的程序中借助 GUI 更改这些参数。问题是当我的软件在ProgramFiles
中时,这无法完成,因为他们没有权限编写ProgramFiles
。我应该做的是将.txt参数文件放在AppData
中。所以我要做的是:
- 在安装时(使用 NSIS 安装程序),我会将.txt参数文件写入
$APPDATA
- 在我的Qt程序中,我会使用
QStandardPaths::AppDataLocation
访问这些.txt参数 所有这些都表明我担心的是,我不确定NSIS安装程序$APPDATA
的路径是否始终与Qt返回的路径相同。QStandardPaths::AppDataLocation
.例如,也许在新版本的Windows上会有一些差异或其他东西。也许这不是一个合法的担忧,但我想验证一下。
关注点2
如果该程序安装在ProgramFiles
中,我是否有可能在 UAC 上遇到一些问题(例如,如果用户不是管理员)或其他任何问题?
非常感谢您的帮助!
如果程序安装在ProgramFiles
中,用户可以毫无问题地执行该程序(无论管理员状态如何)。
但是,如果应用程序必须更新任何文件(在您的情况下是.txt文件),则用户帐户中的任何目录都是一个好地方。大多数应用程序在此类情况下使用Documents
文件夹。
此外ProgramFiles
目录不是特定于用户的。
可能好的方法是为要放置要更新的文件的目录创建一个用户环境变量(对于任何意外情况,易于修改)。以编程方式读取 NSIS 文件和应用程序中的环境变量并使用它。
环境变量,例如:
PROJECTDIR -- C:\Users((USERID))\Documents\projectDir
相关文章:
- CMake 错误"源似乎不包含 CMakeLists.txt",路径/库连接问题
- 有效地将大数存储为 2 的幂用于路径问题
- 使用 Libssh 将文件从服务器复制到客户端:分配文件复制目标路径时出现问题
- 我最近更改了编译器路径以运行 c++ 代码,但现在我无法运行任何 python 代码。我该如何解决这个问题?
- 按名称问题获取卸载应用程序路径
- 从另一个应用启动我的应用时出现相对路径更改问题
- 问题在具有依赖性时从其他路径上加载DLL的DLL
- 程序文件中的安装路径:一些问题
- 在 c++ 中找不到头文件,可能的路径问题
- Visual Studio:C++\CLI 包装程序集路径依赖性问题
- 班级路径问题 - getJnienv失败了
- 最短路径问题与一个变化
- 我的递归算法中的问题,用于查找所有最短、唯一的路径
- 编译C++中动态链接库,存在运行路径问题
- 问题:如何在任何Windows机器上使用路径创建文件
- qt5设计器,使用fileopen,在lineedit中显示文件路径,这样做是否有问题
- IOS上的OpenCV haar级联了C++中的xml文件路径问题
- A* 路径查找中 std::map 性能的视觉C++性能问题
- 实现用于查找路径的递归函数时出现问题
- C++创建进程 - 系统错误#2找不到文件 - 我的文件路径有什么问题?