猪猪 2007-4-1 15:00
用Winsock控件实现文件的下载
信息来源了:中国VB网 作者:佚名
使用控件有:Winsock控件,CommandButton 控件,TextBox 控件
编程步骤如下:
1.首先声明变量
Dim strCommand As String
Dim strWebPage As String
2.把如下代码加到Command1的Command1_Click事件:
[code]Private Sub Command1_Click()
Winsock1.RemoteHost = "[url]http://www.ChinaVB.net[/url]" '设置连接的网址
Winsock1.RemotePort = 80 '设置要连接的远程端口号
Winsock1.Connect '返回与远程计算机的连接。
End Sub[/code]
3.把如下代码加到Winsock1的Connect事件:
[code]Private Sub Winsock1_Connect() '当一个 Connect 操作完成时发生
On Error Resume Next
strWebPage = "[url]http://www.ChinaVB.net/api/index.htm[/url]" '要下载的文件
strCommand = "GET " + strWebPage + " HTTP/1.0" + vbCrLf ''GET 为FTP命令 取得文件
strCommand = strCommand + "Accept: */*" + vbCrLf '这句可以不要
strCommand = strCommand + "Accept: text/html" + vbCrLf '这句可以不要
strCommand = strCommand + vbCrLf '记住一定要加上vbCrLf
'Debug.Print strCommand '注:你可以用Debug.Print strCommand 来查看一下格式
Winsock1.SendData strCommand '给远程计算机发送数据
End Sub[/code]
4.把如下代码加到Winsock1的DataAmival事件:
[code]Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) '取得数据时产生该事件
On Error Resume Next '在错误处理程序结束后,恢复原有的运行
Dim webData As String
Winsock1.GetData webData, vbString '检取当前的数据块
Text1.Text = Text1.Text + webData
End Sub[/code]