URLDownloadToFile

来源:百度文库 编辑:神马文学网 时间:2024/04/30 02:59:42
Downloads bits from the Internet and saves them to a file.
C++语言版本:
Syntax:
HRESULT URLDownloadToFile( LPUNKNOWN pCaller,
LPCTSTR szURL,
LPCTSTR szFileName,
DWORD dwReserved,
LPBINDSTATUSCALLBACK lpfnCB
);
Parameters:pCaller Pointer to the controlling IUnknown interface of the calling Microsoft ActiveX component (if the caller is an ActiveX component).
szURL
Pointer to a string value containing the URL to be downloaded. Cannot be set to NULL.
szFileName
Pointer to a string value containing the name of the file to create for bits that come from the download.
dwReserved
Reserved. Must be set to 0.
lpfnCB
Pointer to the caller's IBindStatusCallback interface. URLDownloadToFile calls this interface's IBindStatusCallback::OnProgress method on a connection activity, including the arrival of data. IBindStatusCallback::OnDataAvailable is never called.
Example:
#include "stdafx.h"
#include
#include
#pragma comment(lib, "urlmon.lib")
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
//nt * dl = new int;
HRESULT hr = URLDownloadToFile(0, _T("http://ui.the9.com/wowshell/WoWShell.exe"),_T("D:\\WoWShell.exe"), 0,NULL);
if (hr== S_OK)
{
cout<< "ok"<< endl;
}
return 0;
}
vb语言版本:
该函数是VB的一个用来调用API进行网络下载的函数,过程如下:
后台下载
声明:
Private 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
'//调用
然后在代码里直接调用:
Call URLDownloadToFile(0, "网页地址", "保存到本地文件名和地址", 0, 0)

Call URLDownloadToFile(0, "http://www.baidu.com/", "c:\1.htm", 0, 0)
相当于另存为
声明:
Private Declare Function DoFileDownload Lib "shdocvw.dll"(ByVal lpszFile As String) As Long
'//调用
然后在代码里直接调用:
Dim gourl As String
AdUrl = StrConv("网页地址", vbUnicode)
Call DoFileDownload(gourl)
扩展阅读:
1.MSDN,VB BLACKBOOK