かなり古いアプリケーションを更新しています。コード全体でINIファイルアクセスを使用し、あちこちでINIアクセスクラスインスタンスを作成して解放しました。
これを、使用するファイルごとに1つずつ、複数の単一インスタンスに集中させたいと思います。したがって、どこにでもコピー貼り付けされたインスタンスを作成/解放し、それらのクラスを完全に置き換える自由を得ることができるので、INIから他の設定ストレージに切り替えることが決定されます。
変更を適用するには、WritePrivateProfileString(NULL、NULL、NULL ...)を呼び出す必要がありますか?次のことを想定します。1)アクセスは、レジストリにマップされたファイルではなく、実際のINIファイルに直接アクセスします。2)OSはNTファミリです(おそらくWin2000、おそらくWinXP以降)。Win9x / ReactOS / WinE / Odin/etcは気になりません。
では、iniの貯蓄を明示的にフラッシュする必要がありますか?
NTはレジストリキーの書き込みをキャッシュしません。今すぐregFlushKeyを実行する必要はありません。しかし、INIファイルはどうですか?
WritePrivateProfileStringに関するMSDNページでは、Win9xおよびNTファイルからRegへのマッピングによるフラッシュ手法についてのみ説明しています。実際のINIファイルについては沈黙しています。