INTERNET_CACHE_ENTRY_INFO info;
ZeroMemory(&info,sizeof(INTERNET_CACHE_ENTRY_INFO));
info.dwStructSize = sizeof(INTERNET_CACHE_ENTRY_INFO);
         
        TCHAR szURL[] = _T("....")
DWORD dwCacheEntryInfoBufSize = sizeof(INTERNET_CACHE_ENTRY_INFO);
BOOL  bRet = GetUrlCacheEntryInfo(szURL,NULL,&dwCacheEntryInfoBufSize);
if (bRet==TRUE)
{
cout<<"文件存在"<<endl;
}我用一个已经在IE缓存目录的文件路径填到szURL里,还是返回0,难道GetUrlCacheEntryInfo废弃不能用或者那里使用错了?GetUrlCacheEntryInfoEX也不管用,XP系统,大家可以试下...

解决方案 »

  1.   

    BOOL  bRet = GetUrlCacheEntryInfo(szURL,NULL/*手误?应该是info啊*/,&dwCacheEntryInfoBufSize);
      

  2.   

    是不是和IE版本有关,我用的这个函数在IE8可以正常,在2台IE6的系统上都不行
      

  3.   

    IE6可以使用,但是调用GetUrlCacheEntryInfo(szURL,NULL,&dwCacheEntryInfoBufSize)时,要处理其lasterror为ERROR_INSUFFICIENT_BUFFER的情况,该情况下,需要根据dwCacheEntryInfoBufSize值分配内存,再调用该函数获取相应信息即可。