在WinInet库中Microsoft提供了一系列的API函数来操作Internet Cache,所以你的要求很容易满足。下面的例子给出了根据url取得其在Internet临时目录中文件名的方法。得到鼠标拖动的图片的url比较简单,此处不再赘述。
DWORD dwEntrySize=0;
LPINTERNET_CACHE_ENTRY_INFO lpCacheEntry;char strTemp[80];
DWORD dwTemp;//假设lpszUrl是图片的url
if (!GetUrlCacheEntryInfo(lpszUrl,NULL,&dwEntrySize))
{
if (GetLastError()!=ERROR_INSUFFICIENT_BUFFER)
{
return FALSE;
}
else
lpCacheEntry = (LPINTERNET_CACHE_ENTRY_INFO)new char[dwEntrySize];
}
else
return FALSE;
if (!GetUrlCacheEntryInfo(lpszUrl,lpCacheEntry,&dwEntrySize))
{
return FALSE;
}
else
{
//lpCacheEntry->lpszLocalFileName即是lpszUrl在缓存中的文件名
return TRUE;
}