Java System.getProperty(“user.home”)的Inno设置常量等效值

Java System.getProperty(“user.home”)的Inno设置常量等效值,java,javafx,inno-setup,Java,Javafx,Inno Setup,我正在用户目录下存储捆绑JavaFX应用程序的首选项文件,我在运行时使用 System.getProperty("user.home") 我想命令InnoSetup在卸载时删除该文件,但找不到合适的Inno常量。 请注意。在Windows上,user.home映射到%USERPROFILE%环境变量,通常是C:\Users\username 在Inno设置中没有等效常数。可能是因为你不应该在那里存储任何文件。您应该将文件存储到C:\Users\username\AppData\Roaming\

我正在用户目录下存储捆绑JavaFX应用程序的首选项文件,我在运行时使用

System.getProperty("user.home")
我想命令InnoSetup在卸载时删除该文件,但找不到合适的Inno常量。
请注意。

在Windows上,
user.home
映射到
%USERPROFILE%
环境变量,通常是
C:\Users\username

在Inno设置中没有等效常数。可能是因为你不应该在那里存储任何文件。您应该将文件存储到
C:\Users\username\AppData\Roaming\app
(或
…\Local\app
)。在Inno设置中,即(或)。在Java中,您可以使用
System.getenv(“APPDATA”)
(或
System.getenv(“LOCALAPPDATA”)


无论如何,要回答您的问题,您可以使用。
另见


通常,尝试访问Inno Setup(un)安装程序中的用户配置文件也是一个坏主意,因为(un)安装程序可以使用不同于您感兴趣的本地帐户(通常是管理员)执行


这已在中介绍。

但是如何在Java上获取“\Local\app”?可以从Inno卸载程序访问此位置吗?非常感谢。我不懂Java。但是我假设您可以使用
System.getenv(“LOCALAPPDATA”)
——但是任何特定于帐户的文件夹,包括
。\Local\app
,都存在与中所述相同的问题,但这是一个不同的主题。