2

Windows マシンにアプリケーション設定を配置するための許容可能な開始点を探しています。複数のアプリケーションを持っています。個人的な理由から、レジストリは使いたくありません。プレーン テキストの初期化ファイル (.ini) の方が好きです。また、ファイルを実行可能ファイルと同じディレクトリに保持するのは好きではありません。理想的な状況では、ユーザーまたはシステム管理者が書き込みを許可されている一般的な場所にファイルを保持できます。

そうです、私は Windows ユーザーではありません。私の最初の推測は と ですが$HOME/.my_company_name/etc/my_company_nameWindows のこれらの場所と概念的に同等のものはありますか?

出力を調べてSET推測するだけです:

%アプリデータ%
%HOMEDRIVE%%HOMEPATH%\ローカル設定
%SYSTEMROOT%

ちなみに、これらの変数がまだWindowsサービス内に存在するかどうかを確認する必要があります...

4

1 に答える 1

4

AppData はあなたが望むものだと思います。

SHGetFolderPath (SHFOLDER.DLL から) を使用して、これをプログラムで取得できます。

MSDN の「データと設定の管理」から(セクション 4.2「アプリケーション データを正しく分類して保存する」を参照):

TCHAR szAppData[MAX_PATH];
…
hr = SHGetFolderPath(NULL, CSIDL_APPDATA, NULL, 0, szAppData);

PathAppend[company name]\[product name]\[version]を使用してszAppDataに追加します。

PathAppend(szAppData, "Company\Product\1.0\File.ini")

またCSIDL_COMMON_APPDATA、非ユーザー固有のデータとCSIDL_LOCAL_APPDATA非ローミング データ (ユーザーが別のマシンにログオンするときにネットワーク経由でコピーしてはならないデータ) 用もあります。

于 2009-07-10T11:54:57.377 に答える