词条 | URLDownloadToFile |
释义 | Downloads bits from the Internet and saves them to a file. Delphi 语言版本⒈uses UrlMon; ⒉//------------------------------------------------------------------------------- ⒊function DownloadFile(SourceFile, DestFile: string): Boolean; ⒋// 参数 下载文件路径, 保存文件路径 ⒌// 返回 下载结果 ⒍begin ⒎try ⒏ Result := UrlDownloadToFile(nil, PChar(SourceFile), PChar(DestFile), 0, nil) = 0; ⒐except ⒑ Result := False; ⒒end; ⒓end; 函数调用: ⒈var ⒉ url,destFile:string; ⒊url := 'http****filename.rar' ⒋destFile := 'E:\\filename.rar' ⒌if DownloadFile(url, DestFile) then ⒍begin ⒎ ShowMessage('保存成功!'); ⒏end ⒐else ⒑begin ⒒ ShowMessage('保存不成功!'); ⒓end; 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). //控件的接口,如果不是控件则为0. szURL Pointer to a string value containing the URL to be downloaded. Cannot be set to NULL //要下载的url地址,不能为空. 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. //保留字段,必需为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. //下载进度状态回调 Return Value Returns one of the following values. S_OK : The download started successfully. E_OUTOFMEMORY: The buffer length is invalid, or there is insufficient memory to complete the operation. INET_E_DOWNLOAD_FAILURE:The specified resource or callback interface was invalid. Example: #include "stdafx.h" #include <iostream> #include <UrlMon.h> #pragma comment(lib, "urlmon.lib") using namespace std; int _tmain(int argc, _TCHAR* argv[]) { //nt * dl = new int; HRESULT hr = URLDownloadToFile(0, _T("***ui.the9.**/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, "*****.baidu**/", "c:\\1.htm", 0, 0) 相当于另存为 声明: Private Declare Function DoFileDownload Lib "shdocvw.dll"(ByVal lpszFile As String) As Long '//调用 然后在代码里直接调用: Dim gourl As String gourl = StrConv("网页地址", vbUnicode) Call DoFileDownload(gourl) |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。