从网上也找了一些代码可是只能实现拖拽单个链接的功能 如果同时拖拽多个连接的时候就不行了
如何像flashget那样想怎么拖就怎么拖 拖一个也行 拖多个也行~下面这段代码只能在对单个链接实现抓取,并且是在未选中标题字符的时候有效 当选中标题字符的时候便无效了
UINT htmlformat =RegisterClipboardFormat(CFSTR_FILEDESCRIPTORA);
if (pDataObject->IsDataAvailable(htmlformat)&&pDataObject->IsDataAvailable(CF_TEXT))
{
STGMEDIUM Stg;
CString strUrl,title;
BOOL bValue = pDataObject->GetData(CF_TEXT, &Stg);
if(bValue)
{
TCHAR *strText = (TCHAR*)GlobalLock(Stg.hGlobal);
strUrl.Format("%s",strText);
//MessageBox(::GetForegroundWindow(),strUrl,"链接",MB_OK¦MB_ICONINFORMATION);
GlobalUnlock(Stg.hGlobal);
}
bValue = pDataObject->GetData(htmlformat, &Stg);
if(bValue)
{
LPFILEGROUPDESCRIPTOR fgd;
fgd = (LPFILEGROUPDESCRIPTOR)GlobalLock(Stg.hGlobal);
title.Format("%s",fgd->fgd[0].cFileName);
GlobalUnlock(Stg.hGlobal);
GlobalFree(Stg.hGlobal);
}
}
如何像flashget那样想怎么拖就怎么拖 拖一个也行 拖多个也行~下面这段代码只能在对单个链接实现抓取,并且是在未选中标题字符的时候有效 当选中标题字符的时候便无效了
UINT htmlformat =RegisterClipboardFormat(CFSTR_FILEDESCRIPTORA);
if (pDataObject->IsDataAvailable(htmlformat)&&pDataObject->IsDataAvailable(CF_TEXT))
{
STGMEDIUM Stg;
CString strUrl,title;
BOOL bValue = pDataObject->GetData(CF_TEXT, &Stg);
if(bValue)
{
TCHAR *strText = (TCHAR*)GlobalLock(Stg.hGlobal);
strUrl.Format("%s",strText);
//MessageBox(::GetForegroundWindow(),strUrl,"链接",MB_OK¦MB_ICONINFORMATION);
GlobalUnlock(Stg.hGlobal);
}
bValue = pDataObject->GetData(htmlformat, &Stg);
if(bValue)
{
LPFILEGROUPDESCRIPTOR fgd;
fgd = (LPFILEGROUPDESCRIPTOR)GlobalLock(Stg.hGlobal);
title.Format("%s",fgd->fgd[0].cFileName);
GlobalUnlock(Stg.hGlobal);
GlobalFree(Stg.hGlobal);
}
}
这个库可以实现你要的功能...有源码的