Drag&Drop и IE
От: Yohan  
Дата: 01.02.07 03:25
Оценка:
Уже написал о свое проблеме в тему WIN API
Автор: Yohan
Дата: 31.01.07
, но вопрос затрагивает смежные темы – посмотрите, может поможете:



Такой вопрос.

Тащим картинку из IE в программу. Программа получает файл, но он локальный, из кэша, и в его имени появляются прямоугольные скобки с цифрами. Например, было img.jpg если перетащить будет img[1].jpg.

Этот эффект можно наблюдать, если просто из IE перетащить картинку, например на рабочий стол – она тоже будет с таким именем.

Как можно из программы достучатся до IE, и узнать настоящее имя перетащенного файла.
Обработка получения файлов в программе примерно такая:


case WM_DROPFILES:
{
    INT_PTR nCnt, nIndex, nSize;
    LPTSTR pszFileName;
    HDROP hDrop;

    hDrop = (HDROP)wParam;
    nCnt = DragQueryFile(hDrop, (UINT)-1, NULL, 0);
    for(nIndex = 0; nIndex < nCnt; ++nIndex)
    {
        if(0 == (nSize = DragQueryFile(hDrop, (UINT)nIndex, NULL, 0)))
        continue;

        pszFileName = new TCHAR[++nSize];

        if(DragQueryFile(hDrop, (UINT)nIndex, pszFileName, (UINT)nSize))
        {

… вот тут, в переменной pszFileName есть полный путь до файла, но путь локальный, примерно такой:

c:\Documents and Settings\USER\Local Settings\Temp\Temporary Internet Files\Content.IE5\KDQVODUB\img[1].jpg

А нужно иметь что-то типа http://www.site.com/img.jpg


       };
    };
DragFinish(hDrop);
};
break;
Re: Drag&Drop и IE
От: dkotov  
Дата: 01.02.07 10:57
Оценка:
MSDN: Network and Directory Services->Network Protocols->Windows Internet->WinINet Reference->WinINet Functions
FindFirstUrlCacheEntry, FindNextUrlCacheEntry, FindCloseUrlCache
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: Drag&Drop и IE
От: Yohan  
Дата: 06.02.07 06:06
Оценка:
Здравствуйте, dkotov, Вы писали:

D>MSDN: Network and Directory Services->Network Protocols->Windows Internet->WinINet Reference->WinINet Functions

D> FindFirstUrlCacheEntry, FindNextUrlCacheEntry, FindCloseUrlCache


Спасибо за помощь. Решил немного другим способом. Правда возникли другие проблемы — посмотрите здесь
Автор: Yohan
Дата: 06.02.07
– может, что подскажете...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.