RequestFile

客户端请求QQServer发送指定的文件到本机。

语法:

RequestFile(FileName,TimeOut,ShowProcess)

FileName:指定要下载的文件名,包括相对路径
TimeOut: 可选参数,指定等待服务器响应的时间,单位为秒,默认为5秒。
ShowProcess:可选参数,辑型,是否显示接收进度,默认为False。

RequestFile会返回一个整数值,0表示提供的路径或文件名错误,1表示请求成功,2表示在规定时间内没有收到服务器没有反应。

说明:

RequestFile只是简单地向QQServer发一个约定格式的型号,QQServer收到这个消息后, 先返回一个消息,告知客户端是否接受其请求,再利用SendFile方法将指定的文件发送给客户端(如果接受客户端请求的话)。
大家可以利用这个思路,进行自己的功能扩展。

RequestFile只能请求QQServer的UploadFiles子目录下的文件,用户上传的文件也存储在这里,按月分目录存储,以避免单个目录下文件过多。

文件名要包括月份路径,使用相对路径即可,例如要请求QQServer发送2015年10月份目录下的某个文件:

Dim ret As Integer = QQClient.RequestFile("201510\123.jpg",2)
If
ret= 0 Then
    PopMessage(
"
文件名或路径错误")
ElseIf
ret= 2 Then
    PopMessage(
"
没有收到服务器的回应!","提示",PopIconEnum.Error)
End
If

上述代码如果请求成功,并不会出现出现任何提示,默认也不会显示文件接收进度(如需显示进度,可以将ShowProcess设置为True),可以继续进行其他操作,好像什么都没有发生。
当文件下载完成后,会触发AfterReceiveFile事件。

需要注意的是,如果本地已经有abc.jpg这个文件,下载完成后,文件会被自动更名为abc(1).jpg,如果abc(1).jpg也已经存在,就会被自动更名为abc(2).jpg。


本页地址:http://www.foxtable.com/webhelp/topics/3044.htm