wininetを使ってhttpのデータを読みたいのですが、

  Do
    DoEvents
    LpszBuffer = ""
    rVal = InternetReadFile(hSource, LpszBuffer, 65525, numOfRead)
    strData = strData + LpszBuffer
  Loop Until rVal = 0 Or numOfRead = 0

  (strData、LpszBuffer:文字列型、numOfRead:Long型)

のようなコードだと所々で空白や改行が入ったり、文字化けしたりして
話になりません。バイト配列で受けて文字列に変換しようとも考えたの
ですが、

  strData = strData + StrConv(bytRecvData, vbUnicode)

のようにしても全くデータが集まらないです。。。
一応調べたのですが、良い方法がわかりませんでした。
ご教授お願いします。