INIファイルの読み出し(バッファサイズの指定)

  • このエントリーをはてなブックマークに追加
  • LINEで送る

旧世代のプログラムの保守をおこなっていると遭遇するINIファイル。

当時は初期値を格納したり、設定を格納したりスタンダードな存在でしたが、すっかり鳴りを潜めました。(Microsoftも非推奨ですしね)

そんなINIファイルを読み出すためにWin32APIのGetPrivateProfileStringを利用することが多いと思うのですが、すっかりはまってしまいました。

pinvokeにも記載がある DllImport を次の通り記述しています。

実際の呼び出しコードは

としていたのですが、4回目の呼び出しでFatalErrorが出てしまいました。
何度I/Fを見直してもおかしいところはない(と思っていました)のですが、ダメもとでバッファサイズを指定することにしました。

このコードでエラーがでなくなりました。
当たり前のお話ですが、バッファサイズは正しく渡しましょう…

SNSでもご購読できます。

スポンサー リンク

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください