Hatena::Groupvbscript

WinHttp.WinHttpRequest

主要な Windows 標準コンポーネントの一覧 → http://vbscript.g.hatena.ne.jp/keyword/ProgID
VBScript 基礎文法最速マスター → http://vbscript.g.hatena.ne.jp/cx20/20100131/1264906231

WinHttp.WinHttpRequest

WinHttp.WinHttpRequest

概要

WinHttp.WinHttpRequest は、WinHTTP オブジェクト を表す ProgID です。

WinHttp.WinHttpRequest を使用することで、Web サーバーに情報を送信したり受信することが可能です。

ライブラリの実装には WinHTTPHTTP通信専用コンポーネント)が用いられています。

WinHTTPWindows Update の更新用サービス(Background Intelligent Transfer Service)等でも使用されています。

同様のライブラリに WinINet ベースの MSXML2.XMLHTTPWinHTTP ベースの MSXML2.ServerXMLHTTP があります。

サンプル

' File : SaveUrlToFile.vbs
' Usage : CScript //Nologo SaveUrlToFile.vbs
' Description : VBScript から WinHTTP を使用して Web の内容を保存するサンプル。
option Explicit

Call Main()

Sub Main()
    Dim strURL
    strURL = "http://www.hatena.ne.jp/"
    Dim strFileName
    strFileName = "hatena.txt"
    Call SaveUrlToFile( strURL, strFileName )
End Sub

Sub SaveUrlToFile( strURL, strFileName )
    Dim http
    Set http = CreateObject("WinHttp.WinHttpRequest.5.1") 
    http.Open "GET", strURL, False
    http.Send

    Dim strMessage
    Dim bOverwrite
    Dim bUnicode
    strMessage = http.ResponseText
    bOverwrite = True
    bUnicode = True ' UNICODE のページを SJIS のファイルに保存するとエラーが発生することがある為、UNICODE 形式にしています。
    Call WriteToToFile( strMessage, strFileName, bOverwrite, bUnicode )
End Sub

Sub WriteToToFile( strMessage, strFileName, bOverwrite, bUnicode )
    Dim fso
    Set fso = CreateObject("Scripting.FileSystemObject")
    Dim file
    Set file = fso.CreateTextFile(strFileName, bOverwrite, bUnicode)
    file.Write strMessage
    file.Close
End Sub

実行結果

ようこそゲストさん … IE の Cookie が使用されない為、ゲストユーザーとしてアクセスします。
ユーザー登録
ログイン
ヘルプ

利用可能な WinHTTP のバージョン

OS5.05.1
Microsoft Windows NT 4.0*1 
Microsoft Windows 2000*2*3
Microsoft Windows XP *4
Microsoft Windows Server 2003 *5
Microsoft Windows Vista 
Microsoft Windows 7 
Microsoft Windows 8 

参考情報

*1Windows NT 4.0 + IE5 以上。ただし WinHTTP 5.0 は 2004年10月にサポート切れの為、現在はダウンロードできません。

*2Windows 2000 以上。ただし WinHTTP 5.0 は 2004年10月にサポート切れの為、現在はダウンロードできません。

*3Windows 2000 SP3 以上

*4Windows XP SP1 以上

*5Windows Server 2003 SP1 以上