XDG Base Directory Specification
Linux環境ではデスクトップ環境の標準化を目的として、XDG Base Directory Specificationという仕様があって、それぞれアプリケーションが使うべきディレクトリを指定しています。
- XDG_CONFIG_HOME
- ユーザー個別の設定が書き込まれるディレクトリ (/etc と類似)。
- デフォルトは $HOME/.config です。
- XDG_CACHE_HOME
- ユーザー個別の重要でない (キャッシュ) データが書き込まれるディレクトリ (/var/cache と類似)。
- デフォルトは $HOME/.cache です。
- XDG_DATA_HOME
- ユーザー個別のデータファイルが書き込まれるディレクトリ (/usr/share と類似)。
- デフォルトは $HOME/.local/share です。
より詳しくはXDG Base Directory サポート - ArchWikiを見てください。これはfreedesktop.orgが定めている仕様なのでWindowsではサポートされていません。
KNOWNFOLDERID / CSIDL
Windwos側でこれに対応するのがKNOWNFOLDERIDとCSIDLのようです。
| Environment String | Example Path |
|---|---|
| %ALLUSERSPROFILE% | C:\ProgramData |
| %APPDATA% | C:\Users\username\AppData\Roaming |
| %LOCALAPPDATA% | C:\Users\username\AppData\Local |
| %ProgramData% | C:\ProgramData |
| %ProgramFiles% | C:\Program Files |
| %ProgramFiles(x86)% | C:\Program Files (x86) |
| %PUBLIC% | C:\Users\Public |
| %SystemDrive% | C: |
| %USERPROFILE% | C:\Users\username |
| %windir% | C:\Windows |
なので表題のアプリケーションの設定は %APPDATA%を使うのが良さそうです