GetPrivateProfileSection


スカ  2004-03-21 01:48:25  No: 82660

2回目の質問です。
GetPrivateProfileSectionを使って、
iniファイルから文字列をとってきているのですが、
そのセクションのすべての文字列をとってこれているかどうか、
逆にいうと、バッファが足りずに中途半端にしかとれてこれていないかを
調べるにはどうしたらよいでしょうか?


oku  URL  2004-03-21 06:15:06  No: 82661

GetPrivateProfileSectionの戻り値がゼロでなければ成功のはずですが、
確かGetPrivateProfileSectionの戻り値は
バッファに格納されたバイト数を返すので。


スカ  2004-03-24 18:37:01  No: 82662

返信ありがとうございます。
戻り値がゼロでなくても、すべてを格納できているわけではないみたいです。。。


しゅう  2004-03-26 09:48:41  No: 82663

下記のReturn Valuesを見ると、
バッファサイズが足りない時には、
戻り値はnSize - 1(場合によりnSize - 2)になると言う様な事が書かれています。
つまり、十分なバッファを用意しておいて、
戻り値がnSize - 2より大きい場合は失敗とすれば良いと思います。

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/sysinfo/base/getprivateprofilestring.asp


しゅう  2004-03-26 09:56:44  No: 82664

失礼しました。
GetPrivateProfileSectionでしたね。
バッファサイズが足りない時には、
nSize - 2が返ってくる様ですね。

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/sysinfo/base/getprivateprofilesection.asp


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加