VC http编程,InternetOpen很慢,连续发了十多个后,其他的都是返回NULL?

wodemsdn 2011-08-06 12:26:18
HINTERNET hOpen = InternetOpen(NULL, INTERNET_OPEN_TYPE_PRECONFIG, NULL, NULL, NULL);
if(NULL == hOpen)
{
InternetCloseHandle(hOpen);
return FALSE;
}
HINTERNET hOpenReq = InternetOpenUrl(hOpen, strDownloadUrl.GetBuffer(), strHeader.GetString(), NULL, INTERNET_FLAG_NO_CACHE_WRITE, NULL);
if (NULL == hOpenReq)
{
InternetCloseHandle(hOpen);
InternetCloseHandle(hOpenReq);
return FALSE;
}
...全文
711 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
InternetOpen 被阻塞了,因为第一个还没有返回,你接着又开启第二个
wodemsdn 2011-08-11
  • 打赏
  • 举报
回复
楼上大哥说的对,我连续请求后下载后,网站就不能访问了。现在我想通过代理来实现,多个代理ip和端口已经有了,但不知道怎么用internetopen internetopenurl 来实现,希望各路大侠指点
辰岡墨竹 2011-08-10
  • 打赏
  • 举报
回复
超时肯定是网站为了避免控制流量,而加的限制,一次只允许一个IP用一个连接。
zhuang_bx 2011-08-08
  • 打赏
  • 举报
回复
还是用线程吧,也不会卡住.
wodemsdn 2011-08-08
  • 打赏
  • 举报
回复
GetLastError() = 12002 是不是超时了,如果超时了怎么处理
oyljerry 2011-08-07
  • 打赏
  • 举报
回复
开线程来处理呢.
返回NULL时,GetLastError
Eleven 2011-08-07
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 wodemsdn 的回复:]

我最近刚接触vc http编程,就是搞不明白为什么前几个URL可以用InternetOpenUrl正确连上,后面的好像每个在InternetOpenUrl上所花的时间都要四五十秒,而且InternetOpenUrl的返回值都是NULL.
[/Quote]
GetLastError()的返回值是什么?
wodemsdn 2011-08-07
  • 打赏
  • 举报
回复
我最近刚接触vc http编程,就是搞不明白为什么前几个URL可以用InternetOpenUrl正确连上,后面的好像每个在InternetOpenUrl上所花的时间都要四五十秒,而且InternetOpenUrl的返回值都是NULL.
wodemsdn 2011-08-07
  • 打赏
  • 举报
回复
我是通过循环构造搜索的URL去获取搜索页面的内容。 前几个是可以用InternetOpenUrl正确连上,后面的好像每个在InternetOpenUrl上所花的时间都要四五十秒,而且InternetOpenUrl的返回值都是NULL,这是为什么?感觉好像是超时了,但是如果单独发一个的话InternetOpenUrl返回的就不是NULL?请各路大侠指教啊!
wyx100 2011-08-07
  • 打赏
  • 举报
回复
开线程来处理呢.
返回NULL时,GetLastError
辰岡墨竹 2011-08-07
  • 打赏
  • 举报
回复
默认情况下,Windows Internet Explorer 7 及其早期版本会将同时可下载的文件数限制为 2 个。Windows Internet Explorer 8 将同时可下载的文件数限制为 6 个。此更改反映了现今多数用户通常拥有更快的连接速度。对于拨号连接,早期版本中的限制仍然适用。
可以通过注册表设置来增加链接设置。
http://support.microsoft.com/kb/282402
或者使用其它方法进行HTTP通信,比如WinHTTP或curl库。
WinHTTP是Win2000 SP3、WinXP SP1或Win2k3 SP1之后提供的系统组件,独立于WinINet,开发时需要安装Platform SDK或Windows SDK。可以用来替代WinINet进行HTTP开发。
http://msdn.microsoft.com/en-us/library/aa384273(v=VS.85).aspx
野男孩 2011-08-07
  • 打赏
  • 举报
回复
连续发十多个,其他都是NULL。。。其他是啥??

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧