通過C/C++基於http下載文件


簡介

Windows系統如何通過C/C++下載互聯網上的文件呢?這里筆者給大家演示一個最簡單的方法,利用Windows提供的urlmon庫,可以快速實現文件下載的簡單實例。


注:本文內容部分參考了《非安全》編輯部出版的《Hack編程實例精講》系列書籍,在此致謝。

C++代碼樣例

#include <cstdio>
#include <iostream>
#include <cstdlib>
#include <cstring>
#include <windows.h>
#include <urlmon.h>

#pragma comment(lib, "urlmon.lib")

using namespace std;

BOOL FileExistsStatus(const CHAR* path)
{
	DWORD dwAttribute = GetFileAttributes(path);
	if (dwAttribute == 0XFFFFFFFF) return false; //0XFFFFFFFF表示文件不存在
	else return true;
}

BOOL DownloadFiles(const CHAR* url, const CHAR* downloadPath)
{
	if (URLDownloadToFile(NULL, url, downloadPath, 0, 0) == S_OK && FileExistsStatus(downloadPath)) return true;
	else return false;
}

int main(int argc, char* argv[])
{
	if (DownloadFiles(argv[1], argv[2])) printf("OK!\n");
	else printf("Error!\n");
	return 0;
}

##演示效果
  • 運行界面
    運行界面

  • 實現效果
    實現效果


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM