关于wininet如何实现自动跳转和处理默认网页?

gongcs 2006-06-19 12:07:42
下面是个典型的下载初始化过程,但有几个问题不太清楚,拜托高手帮忙


AnsiString HostName,FileName;
ParseURL(HostName, FileName,URL); //问题1,如果URL是"http://www.sohu.com/", 那解析出来的FileName就是空的了,HttpOpenRequest的时候就会出错,什么办呢?

try
{
// 1.建立会话
FhSession = InternetOpen("http-get-demo",
INTERNET_OPEN_TYPE_PRECONFIG,
NULL,NULL,
0);
// 同步方式
if( FhSession==NULL)
{
return false;
}
// 2.建立连接
FhConnect=InternetConnect(FhSession,
HostName.c_str(),
INTERNET_DEFAULT_HTTP_PORT,
NULL,NULL,
INTERNET_SERVICE_HTTP, 0, 0);
if(FhConnect==NULL)
{
return false;
}
// 3.初始化下载请求
const char *FAcceptTypes = "*/*";
FhRequest = HttpOpenRequest(FhConnect, //问题2,如果网页发生了跳转,就下载不了,怎么办好呢?
"GET", // 从服务器获取数据
FileName.c_str(), // 想读取的文件的名称
"HTTP/1.1", // 使用的协议
NULL,
&FAcceptTypes,
INTERNET_FLAG_RELOAD,
0);
if( FhRequest==NULL)
{
return false;
}
// 4.发送下载请求
HttpSendRequest(FhRequest, NULL, 0, NULL, 0);
}
catch(Exception &exception)
{
Release(); // 关闭连接,释放资源
}
return true;
...全文
242 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

1,317

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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