iniファイルは何所に行った……

BOOL WritePrivateProfileString(
LPCTSTR lpAppName, // セクション名
LPCTSTR lpKeyName, // キー名
LPCTSTR lpString, // 追加するべき文字列
LPCTSTR lpFileName // .ini ファイル
);

の、lpFileNameに、きちんとフォルダを指示しておかないと、
iniのファイルが変なところに格納されちゃうみたい……。


C:\Users\XXX\AppData\Local\VirtualStore\Windows
(XXXはコンピュータ名)
に格納されてしまった。
うはあ。


iniファイル。
かなり前から「iniよりもレジストリ推奨」とか書いてあるにもかかわらず、
無くならないのは、ファイルとして存在しているお手軽さだからだと思う。
設定を残せて、サクッと消せる。
何て便利。


逆に言えば、レジストリがお手軽でなさすぎ……。
フォルダごとサクッとコピーして、ほかのPCに持っていっても、
レジストリの設定が違うからプログラムが動かない」というのは、正直、辛い。
(まあ、市販のアプリケーションのコピー防止には成るんだろうけど。)


そして、レジストリは、潜りすぎて、どこに設定が書かれているかも判らなくなってしまう恐れがある。
改変するのにも、ほかのソフトとの兼ね合いがあるから、怖い。
推奨とはいえ……ねえ。


話が逸れたけど、iniファイルをLuXでサポートすることにした。
ただ、上記の理由で、フォルダの指定を誤るとまずいので、
ファイルの指定方法を束縛しようかと思う。


ルート指定用のマークと、ファイル拡張子指定をNGにする。
(つまり「/」と「\」と「.」を使ってはならないものとする)
そして、LuX側でルート直下を強制指定し、拡張子を自動に付加する。


という方法にしようかと。
つまり、拡張子を付けないファイル名しか指定できない状態。
これで、不正が無くて安全にコーティング出来る……はず。