Inet1.GetChunk(1024, icString)で1023バイトの文字列が戻る理由


ぴの  2004-05-11 10:34:20  No: 83304  IP: [192.*.*.*]

VB6.0 sp5で開発しています。Webサーバは Shift_JIS を返します。

Dim vtData As Variant
vtData = Inet1.GetChunk(1024, icString)

でデータを取得しているのですが、データの最後が漢字の場合
正確にデータがとれません。最後の文字が文字化けします。
調べると取得した文字列のサイズが1023バイトになっていました。
sizelenM = LenB(StrConv(vtData, vbFromUnicode))

GetChunkにicByteArrayを使うとうまく動作するのですが
なぜicStringでうまくとれないのかが疑問なのです。
どなたか教えていただけませんか?よろしくお願いいたします。

編集 削除
ちゃん  2004-05-11 10:47:21  No: 83305  IP: [192.*.*.*]

C の世界では、
文字列の最後に \0
( VB で言うところの vbNullChar, Chr(0) )が
含まれます。

多分、そこらへんが関係しているのではないでしょうか?

編集 削除