INIファイルを読み書きする場合に ReadProfileString WriteProfileString を使用して読み込むのもいいですが人毎の環境設定などが出来なくなるので ここは DWORD GetPrivateProfileString(lpszSection, lpszKey, lpszDefault, lpszReturnBuffer, cchReturnBuffer, lpszFile); BOOL WritePrivateProfileString(lpszSection, lpszKey, lpszString, lpszFile); の2つの関数を使用します。 INIファイルの中身は [セクション名] キー名1=文字列1 キー名2=文字列2 キー名3=文字列3 で設定されています。このことをふまえた上で関数の説明 GetPrivateProfileString LPCTSTR lpszSection; /* セクション名のアドレス*/ LPCTSTR lpszKey; /* キー名のアドレス*/ LPCTSTR lpszDefault; /* デフォルト文字列のアドレス*/ LPTSTR lpszReturnBuffer; /* 転送先バッファのアドレス*/ DWORD cchReturnBuffer; /* 転送先バッファのサイズ*/ LPCTSTR lpszFile; /* 初期化ファイル名(INI)のアドレス*/ WritePrivateProfileString LPCTSTR lpszSection; /* セクション名のアドレス*/ LPCTSTR lpszKey; /* キー名のアドレス*/ LPCTSTR lpszString; /* 追加する文字列のアドレス*/ LPCTSTR lpszFile; /* 初期化ファイル名(INI)のアドレス*/ INT 型のデータを確保する場合は GetPrivateProfileIntをすれば良さそうですがこの関数を使用するとUINT型でデータが返ってくるようなので すなおにGetPrivateProfileStringでデータを確保してatoiで文字列をINT型に変換したほうが良さそうです。 文字列以外のデータもsprintfを使用して文字列に変換すれば簡単になるはずで。 基本的にはRegistryを使用すべきなのですが。違うパソコンでも全く同じ設定で残したい場合に はINIファイルを使用した方が便利に思えます。