为什么这段代码调试老是不成功,判定IIS是否停止的程序
if (AfxParseURL(myhfp->HttpUrl, dwServiceType, strServerName, strObject, nPort) &&dwServiceType == INTERNET_SERVICE_HTTP)
{
try
{
session = new CInternetSession();
pServer = session->GetHttpConnection(strServerName, nPort);
pFile = pServer->OpenRequest(CHttpConnection::HTTP_VERB_GET,
strObject, NULL, 1, NULL, NULL, INTERNET_FLAG_EXISTING_CONNECT | INTERNET_FLAG_NO_AUTO_REDIRECT);
pFile->SendRequest();
DWORD dwRet;
pFile->QueryInfoStatusCode(dwRet);
pFile->ReadString(str);
if(str.Trim().MakeLower()=="test")
{
IsHttpOK = true;
PRINTF("HTTPOK");
}
}catch(CInternetException* e)
{
IsHttpOK = false;
PRINTF("HTTPERROR");
}
}
这是一个判断IIS是否down掉的一个程序片断,程序设计思路是在根目录下放一文件,然后在程序里打开来判定是否IIS down掉.
现在的问题是如果IIS一开始是down掉的,那么程序运行过程中,先显示HTTPERROR,我如果将IIS重启,调试为OK
但如果IIS一开始是运行着的,我在程序运行过程中,先显示HTTPOK,如果将IISdown掉,他就检测不出来,一直显示OK
请问程序哪一块有问题了,还是有其他更好的解决办法