起動時にiniをサーチする順番
 (1)コマンド指定フォルダ
 (2)プライベートフォルダ(c:\document and settings\... 等)
 (3)本体と同じフォルダ
設定変更時/終了時の書き込み先優先順
 (1)コマンド指定フォルダ(指定されている場合)
 (2)起動時と同じフォルダ(←ミソ)
 (3)プライベートフォルダ(user名が取得できた時のみ)
 (4)本体と同じフォルダ(書き込み可能な場合)
としとけばいいんじゃねーノ?
んで、
・ユーザー毎に設定を分けたい場合は、プライベートフォルダに
 iniを個別に作っておく。(win2kならdefault userを使うとラク)
 あるいはショートカットのコマンド指定で振り分け。
 (これも環境変数%user%を使えばラク)
・シングルユーザで使うorマルチユーザ環境で設定を共有したい場合は
 コマンド指定or本体と同じフォルダにiniを置く。
とすりゃいい。

あと以下は必須じゃないが
・レジストリや環境設定によるフォルダ指定機能
・ツールやプロパティでiniを移動する機能
・本体フォルダに書き込めない場合の次候補(temp等)
なんかも用意しとくと完璧だと思われ。