お世話になっています。
ブラウザ画面にて
指定されたリンクをクリックしてcsvファイルをダウンロードするための
HTMLページがあります
これを自動化しようと考えwinXPSP1 + vb6 にて、
Dim WinHttp As Object,byteWord() as byte
Set WinHttp = CreateObject("WinHttp.WinHttpRequest.5.1")
WinHttp.Open "GET", "http://www.xxx.yyy/aaa.csv", False
WinHttp.setRequestHeader --- 略 ---
WinHttp.send
byteWord = WinHttp.responseBody
---バイナリから、sjisへの変換コード
というプログラムを組んでいます。
winxp +vb6では、正常動作しているのですが、
vista64bit + vb6 では、同じコードで作成したテキストに文字化けが発生しています。
原因について何か心当たりがありますでしょうか。
(1)プログラムの他の部分で、http通信にてリダイレクトの処理が必要です。
そのためxmlhttpは使えないと考えています。
(ここの処理だけテスト的にCreateObject("MSXML2.XMLHTTP")を使用したところ)無事、テキストの取得ができました。
(2)webbrowserオブジェクトでもよいのですが、リンクをクリックする操作で
ダウンロードの確認ウィンドウを表示してしまい、自動処理ができません。
オプジェクトに特にこだわりはないので、(1),(2)について何か誤解している点があれば、その指摘でもかまいません。
よろしくお願いします。
「vista 文字化け」で検索するといろいろ出てきます。
原因は違うかも知れませんが、一応
VistaとXPの間で起こる文字化けを回避する方法
http://coliss.com/articles/software/windows-vista/169.html
やじゅ様、ご返信ありがとうございます。
ご指摘いただいた文書は確認したのですが、
フォントの文字化けというよりは
文字列そのものがぐちゃぐちゃです。
ファイルの最初の文字列は、半角数字が続くのですが
それすらも化けます。
ちなみに
vista64,IE7にて、ブラウザにて指定URLを開き
ページ中のリンクをクリックしてダウンロードすると
正常に受信できるので
やはり
WinHTTPに問題があるのかなと思っています。
ツイート | ![]() |