IE Cache
От: HotDog Швейцария www.denebspace.com
Дата: 25.06.01 07:53
Оценка:
Пишу программу в которую с помощью Drag&Drop из IE перетягивается картинка. Т.е в программе получаю адрес (линк) image. Теперь, чтобы не качать эту пикчу, лезу в кэш ИЕ и выдергиваю ее оттуда.
Проблема состоит в том, что не все пикчи таким образом получается вытащить. Очень часто получаю file not found. И самое странное что к примеру есть хтмл и в нем три ссылки, первую и третью удается перетащить, а на второй говорит file not found, хотя в кеше этот файл лежит.
Может быть кто занимался подобной задачей или знает как это рашется?

код по которому я получаю локальный путь к файлу

long CWininetXCtrl::GetUrlCacheEntryInfoX(LPCTSTR UrlName) 
{

        DWORD dwEntrySize=0;
        LPINTERNET_CACHE_ENTRY_INFO lpCacheEntry;


        if (!GetUrlCacheEntryInfo(UrlName,NULL,&dwEntrySize))
        {
                long lError = GetLastError();
                if (lError!=ERROR_INSUFFICIENT_BUFFER)
                {
                        memset (_szUrlName_,0,sizeof(_szUrlName_));
                        return 0L; // FALSE;
                }
                else
                        lpCacheEntry = (LPINTERNET_CACHE_ENTRY_INFO) 
                                        new char[dwEntrySize];
        }
        else
        {
                memset (_szUrlName_,0,sizeof(_szUrlName_));
                return 0L; //FALSE; // should not be successful w/ NULL buffer
                                    // and 0 size
        }

        if (!GetUrlCacheEntryInfo(UrlName,lpCacheEntry,&dwEntrySize))
        {
                memset (_szUrlName_,0,sizeof(_szUrlName_));
                return 0L; //FALSE;
        }
        else
        {
                memset (_szUrlName_,0,sizeof(_szUrlName_));
                strcpy(_szUrlName_,(char*)lpCacheEntry->lpszLocalFileName);
                return 1L; //TRUE;

        }

        return 0L;
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.