Private Function XMLGetURL(URL As String) As Byte()
On Error GoTo errHandler
Dim XMLObj As Object
Set XMLObj = CreateObject("Microsoft.XMLHTTP")
XMLObj.open "GET", URL, False
XMLObj.Send
If XMLObj.readyState <> 4 Then
MsgBox "下载失败!"
Exit Function
End If
XMLGetURL = XMLObj.responseBody
Set XMLObj = Nothing
Exit Function
errHandler:
MsgBox Err.Description, vbInformation, "错误"
End Function
Function SaveImage(URL As String, toFile As String)
Dim objStream As Object
Dim ImgData() As Byte
ImgData = XMLGetURL(URL)
Set objStream = CreateObject("ADODB.Stream")
objStream.Type = 1
objStream.open
objStream.Write ImgData
objStream.SaveToFile toFile, 2
objStream.Close
Set objStream = Nothing
End Function
Private Function GetFileName(URL As String) As String
GetFileName = Mid(URL, InStrRev(URL, "/") + 1)
End Function
Private Sub Command1_Click()
Dim URL As String
URL = "http://expert.csdn.net/images/csdn.gif"
SaveImage URL, "c:\" & GetFileName(URL)
Picture1.Picture = LoadPicture("c:\" & GetFileName(URL))
End Sub
Private Function XMLGetURL(URL As String) As Byte()
On Error GoTo errHandler
Dim XMLObj As New XMLHTTP
XMLObj.open "GET", URL, False
XMLObj.Send
If XMLObj.readyState <> 4 Then
MsgBox "下载失败!"
Exit Function
End If
XMLGetURL = XMLObj.responseBody
Set XMLObj = Nothing
Exit Function
errHandler:
MsgBox Err.Description, vbInformation, "错误"
End Function
Function SaveImage(URL As String, toFile As String)
Dim objStream As New Stream
Dim ImgData() As Byte
ImgData = XMLGetURL(URL)
objStream.Type = 1
objStream.open
objStream.Write ImgData
objStream.SaveToFile toFile, 2
objStream.Close
Set objStream = Nothing
End Function
Private Function GetFileName(URL As String) As String
GetFileName = Mid(URL, InStrRev(URL, "/") + 1)
End Function
Private Sub Command1_Click()
Dim URL As String
URL = "http://expert.csdn.net/images/csdn.gif"
SaveImage URL, "c:\" & GetFileName(URL)
Picture1.Picture = LoadPicture("c:\" & GetFileName(URL))
End Sub
Public Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
Public Function DownloadFile(URL As String, LocalFilename As String) As Boolean
Dim lngRetVal As Long
lngRetVal = URLDownloadToFile(0, URL, LocalFilename, 0, 0)
If lngRetVal = 0 Then DownloadFile = True
End Function
Private Sub Command1_Click()
Inet1.Execute Text1.Text, "GET"
End Sub
Private Sub Form_Load()
Text1.Text = "http://www.csdn.net/images/homeimage/csdn.gif"
Text2.Text = "c:\temp.gif"
End Sub
Private Sub Inet1_StateChanged(ByVal State As Integer)
On Error GoTo Errhandler
Dim vtData() As Byte '数据变量。
Dim Count As Long
Select Case State
Case icHostResolvingHost
Label1.Caption = "正在查询所指定的主机的 IP 地址"
Case icHostResolved
Label1.Caption = "成功地找到所指定的主机的 IP 地址"
Case icConnecting
Label1.Caption = "正在与主机连接"
Case icConnected
Label1.Caption = "已与主机连接成功"
Case icRequesting
Label1.Caption = "正在向主机发送请求"
Case icRequestSent
Label1.Caption = "发送请求已成功"
Case icReceivingResponse
Label1.Caption = "在接收主机的响应"
Case icResponseReceived
Label1.Caption = "成功地接收到主机的响应"
Case icDisconnecting
Label1.Caption = "正在解除与主机的连接"
Case icDisconnected
Label1.Caption = "已成功地与主机解除了连接"
Case icError
Label1.Caption = "与主机通讯时出现了错误"
Case icResponseCompleted '12