wininet 常见问题



2、WININET 的 超时据说是bug,那么同步应用只是try catch了,一般超时会在2-3分钟返回;

3、长连接,据说是wininet被限制在同时保持2个会话连接,多了就阻塞。可以尝试以下设置

inetSession.SetOption(INTERNET_OPTION_MAX_CONNS_PER_SERVER,&uParam,sizeof(int));

INTERNET_OPTION_CONNECT_TIMEOUT发送数据时间

INTERNET_OPTION_SEND_TIMEOUT、接受数据的时间

INTERNET_OPTION_RECEIVE_TIMEOUT、

INTERNET_OPTION_MAX_CONNS_PER_SERVER  服务器连接个数

INTERNET_OPTION_MAX_CONNS_PER_1_0_SERVER 服务器连接个数

 
     当网络不稳定时,可能无法正常接收到返回值,详细处理看注意事项;
  5.接受数据保存文件
  使用CHttpFile::QueryInfo接受返回数据,判断参数值范围,如果正确则将读取到的数据存入文件,这里要注意转换字节。
  6.异常处理
  对所有异常的捕获可以使程序更稳定。
  注意事项  
  2.在网络不稳定或者突然断线情况下,使用WinInet网络连接会出现错误或不稳定,造成退出或者网络超时无法返回,使得用户界面堵塞或者退出。
  3.在使用WinInet多线程连接服务器时,一定要设置运行TCP/IP最大连接数,否则部分线程会堵塞返回超时等错误。
 

 参考文章 :http://www.southgis.com/bz/198.html

原文地址:https://www.cnblogs.com/niuniu502/p/2099420.html