请问这里InternetOpenUrl为什么老是出错?

vanxining vanxining 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
#include <windows.h>
#include <wininet.h>
#include <iostream>
#pragma comment(lib, "Wininet.lib")

void Download(char url[]);

int main(int argc, char *argv[])
{

Download("www.baidu.com");

return 0;
}


void Download(char url[])
{
char buffer[100000];//下载文件的缓冲区
DWORD bytes_read;//下载的字节数

//打开一个internet连接
HINTERNET internet=InternetOpen("HTTP Downloader",INTERNET_OPEN_TYPE_PRECONFIG,NULL, NULL, NULL);

if(!internet)
throw "InternetOpen error!";

//打开一个http url地址
HINTERNET file_handle=InternetOpenUrl(internet, url, NULL, 0,INTERNET_FLAG_RELOAD, 0);

if(!file_handle)
//throw "InternetOpenUrl error! - Maybe you should add Http:// or Ftp://";
cout<<"失败!\n";
return;

//从url地址中读取文件内容到缓冲区buffer
BOOL b = InternetReadFile(file_handle, buffer, 100000, &bytes_read);
if(!b)
throw "InternetReadFile error!";

buffer[bytes_read] = 0;

//cout << buffer << endl << endl;

//关闭连接
InternetCloseHandle(internet);

cout<<buffer;
}


我原本用得好好的,不知怎么的忽然就不行了。

谢谢大家。
...全文

相关推荐

三种获取网页源码的方法(使用MFC/Socket实现)

Windows下比较简单的获取网页源码的方法:使用MFC、使用MFC、Socket实现

weixin_38632797

C++文件下载实战:WinINet与libcurl双方案详解与源码实现

文件下载是网络编程中的基础且高频需求,其核心原理是通过HTTP/HTTPS等应用层协议,从远程服务器获取数据并写入本地存储。实现一个健壮的下载器,关键在于对网络连接、数据传输和错误处理的精细控制,这直接关系到软件的稳定性和用户体验。在C++生态中,开发者常面临方案选型:是使用系统原生API(如Windows的WinINet)以获得更好的平台集成度,还是采用跨平台的第三方库(如libcurl)来保证代码的可移植性和功能丰富性。本文以实际工程实践为导向,深入剖析了这两种主流技术路径,提供了从基础下载、进度回调到

Nicholas Qin

VC++ MFC项目直接可用的HTTP通信工具,含GET/POST封装源码

一套开箱即用的MFC HTTP客户端实现,仅需HttpClient.h和HttpClient.cpp两个文件,不依赖libcurl、WinHTTP等第三方库,纯MFC原生C++编写。支持同步GET请求获取网页或API数据,也支持字符串或二进制格式的POST提交,可自定义请求头、超时时间(毫秒级),返回原始HTTP状态码和完整响应体,方便做状态判断与内容解析。代码无异常捕获、无异步回调、无线程封装,结构扁平清晰,适合嵌入已有MFC桌面程序,用于设备配置上传、心跳上报、轻量API对接、远程参数拉取等典型Wind

orange

OpenSpec可执行规范:让API契约实时运行与自动审计

可执行规范(Executable Specification)是一种将接口契约、测试用例和安全策略等静态文档转化为可验证、可运行、可审计的动态能力的技术范式。其核心原理在于通过命令驱动机制,将YAML/JSON定义的规范实时映射为HTTP探针、结构化断言与事件响应流,实现规范与代码行为的一致性保障。该技术显著提升API治理效率与协作可信度,广泛应用于微服务健康监控、CI/CD质量门禁、跨团队契约测试及合规审计等场景。OpenSpec与OPSX命令正是这一范式的工程化落地代表,支持流式监听、上下文编排与多环境

anjichan4261

公司内网软件下载站,公司内网软件下载站

公司内网软件下载站,公司内网软件下载站

zhongguoYPT
评论 4
收藏 已收藏
分享
返回顶部
vanxining
网络编程 18,356 成员 64,161 内容