将用户配置文件放在Windows中的位置

UsA*_*R33 8 python windows configuration configuration-files

我正在编写一个python库,它有一个每用户配置文件,可以由库用户编辑.该库还生成日志文件.在*nix上,标准似乎是将它们转储到$ HOME/.library_name中.

但是,我不确定如何处理Windows用户.在切换到Linux之前,我已经使用了多年的Windows,似乎应用程序倾向于A)依赖于GUI配置(我宁愿不开发)或者B)在注册表中转储配置数据(这对于开发和使用*nix配置文件无法移植)

我目前正在将文件转储到Windows上的$ HOME/.library_name中,但这在Windows上感觉非常不自然.
我已经考虑将它放入%APPDATA%,其中应用程序数据往往存在,但这有其自身的问题.我最担心的是,非专业用户可能甚至不知道该目录的位置(与%HOME /〜不同),并且用户可编辑的配置文件似乎不会正常进入此处.

Windows上每用户可编辑配置文件的标准位置是什么?

T.J*_*der 10

%APPDATA%是这些的正确位置(可能在您的库的子目录中).不幸的是,移植到Windows的相当数量的*nix应用程序尊重这一点,我最终使用.gem,.ssh,.VirtualBox等文件夹混乱了我的主目录,默认情况下不会隐藏在*nix上.

通过使用在编辑器中打开配置文件的菜单项(或类似文件),即使对不太了解Windows目录结构布局的用户也可以轻松实现.

如果可能,请为文件提供GUI前端,即使它非常简单.Windows用户需要一个工具| 选项菜单项,它会弹出一个对话框,允许它们设置选项,如果没有选项则不加.


nea*_*mcb 8

python appdirs包很好地在各种平台上找到应用程序数据的标准位置.例如,对于Windows,它使用英语XP位置:

C:\Documents and Settings\<User>\Application Data\Local Settings\<AppAuthor>\<AppName>
Run Code Online (Sandbox Code Playgroud)

在Linux上它遵循XDG标准:

 ~/.config/<appname>
Run Code Online (Sandbox Code Playgroud)