下面这段代码为什么在线程里运行如果没有连接网络,就会程序崩溃,该如何解决
下面这段代码为什么在线程里运行如果没有连接网络,就会程序崩溃
CString url, data;
url= "http://yangzs.yeah.net ";
CInternetSession is;
CHttpFile* phf = NULL;
phf=(CHttpFile*)is.OpenURL(url, 1,
INTERNET_FLAG_TRANSFER_ASCII|INTERNET_FLAG_RELOAD);//打开文件
data.Empty();
CString sTmp;
while( phf-> ReadString(sTmp) )
{
data += sTmp;
m_txt=data;
}
------解决方案--------------------
phf=(CHttpFile*)is.OpenURL(url, 1,
INTERNET_FLAG_TRANSFER_ASCII|INTERNET_FLAG_RELOAD);//打开文件
if(phf == NULL)
{
return;
}
------解决方案--------------------
当然应该先判断返回值是否有效。
CString url, data;
url= "http://yangzs.yeah.net ";
CInternetSession is;
CHttpFile* phf = NULL;
phf=(CHttpFile*)is.OpenURL(url, 1,
INTERNET_FLAG_TRANSFER_ASCII|INTERNET_FLAG_RELOAD);//打开文件
data.Empty();
CString sTmp;
while( phf-> ReadString(sTmp) )
{
data += sTmp;
m_txt=data;
}
------解决方案--------------------
phf=(CHttpFile*)is.OpenURL(url, 1,
INTERNET_FLAG_TRANSFER_ASCII|INTERNET_FLAG_RELOAD);//打开文件
if(phf == NULL)
{
return;
}
------解决方案--------------------
当然应该先判断返回值是否有效。