void CExam8Dlg::OnInitialButton() 
{
INTERNET_PROXY_INFO   proxyinfo;   
proxyinfo.dwAccessType   =   INTERNET_OPEN_TYPE_PROXY;   
proxyinfo.lpszProxy=tw[ll];
proxyinfo.lpszProxyBypass   =   NULL;  

m_keyword_list.ResetContent();
content.Empty();
try   
{  
//CInternetSession session("HttpClient"); 
CInternetSession session;
CHttpFile* pfile ;
DWORD dwStatusCode; 
CString data;
do

while(!session.SetOption(INTERNET_OPTION_PROXY,(LPVOID)&proxyinfo,sizeof(INTERNET_PROXY_INFO)))   //设置代理服务器
{
ll++;
if(ll>4)
ll=0;
proxyinfo.lpszProxy=tw[ll];
::MessageBox(NULL, tw[ll], NULL, MB_OK);
} m_rank_list.AddString("通过代理访问目标页面");//通过代理访问目标页面
pfile= (CHttpFile *)session.OpenURL(entry_url); 
pfile -> QueryInfoStatusCode(dwStatusCode); 
if(dwStatusCode == HTTP_STATUS_OK) 
{
m_rank_list.AddString("开始读取目标页面内容");//开始读取目标页面内容
while (pfile -> ReadString(data))      
{        
content  += data + "\r\n";   
}     
content.TrimRight(); 
m_rank_list.AddString("读取成功");//读取成功
}
else
{
Sleep(50000);
save_keyword=load_keyword();
save_keyword.TrimLeft();
save_keyword.TrimRight();
entry_url.Format(url);
}
}while(dwStatusCode != HTTP_STATUS_OK);
pfile -> Close();   
delete pfile; 
session.Close(); 
}
catch(_com_error *e)   
{   
CString errormessage;   
errormessage.Format("打开URL失败!\r\n错误信息:%s",e->ErrorMessage());   
AfxMessageBox(errormessage);///显示错误信息   

ll++;
if(ll>4)
ll=0;...
...
....现在的情况是 如果代理服务器不可用的话程序就会死掉,如何判断代理服务器是否可用呢?或者说 如果代理服务器不可用 自动更换代理服务器,请问 怎么实现?