gpt4 book ai didi

inno-setup - 使用 Inno Setup 安装的应用程序将文件写入未知位置而不是其安装文件夹

转载 作者:太空宇宙 更新时间:2023-11-04 09:23:46 25 4
gpt4 key购买 nike

我尝试使用 Inno Setup 为我的程序进行设置。

我在 .exe 所在的文件夹中安装了更多 XML 文件。安装工作正常,但是当我运行程序并修改 XML 时,该文件保存在另一个位置,而不是 .exe 的文件夹中,我找不到它。我认为该文件存储在 PC 中,因为程序可以毫无问题地打开它。

我还尝试使用 InstallAware Express 7 进行相同的设置,效果很好。 Io 我认为这不是我的 exe 的问题,而是 Inno Setup 的问题。

谢谢

最佳答案

我认为您是 Windows 文件虚拟化的受害者。

您可能将数据文件安装到 Program Files 文件夹中。

该文件夹不可写(除非您的程序以提升的权限运行)。如果你的程序没有application manifest ,Windows 认为它​​是一个遗留应用程序,不知道它无法写入Program Files并启用文件虚拟化。因此,当您的应用程序尝试写入数据/XML 文件时,Windows 会将写入(以及将来的读取)重定向到虚拟存储 (C:\Users\username\AppData\Local\VirtualStore)。 Program Files 中的实际文件不会被修改。

很难回答为什么它可以与 InstallAware Express 配合使用。如果您在 Inno Setup 后尝试过,结果可能会受到虚拟存储中该文件是否存在的影响。

无论如何,根本原因是您的应用程序尝试将文件写入Program Files。那是错误的。任何应用程序都不应写入Program Files
另请参阅Application does not work when installed with Inno Setup .

关于inno-setup - 使用 Inno Setup 安装的应用程序将文件写入未知位置而不是其安装文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58006369/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com