请问在IDownloadManager的Download事件里如何获取要下载的文件名?所有参数如下
                   Download(IMoniker *pmk,
IBindCtx *pbc,
DWORD dwBindVerb,
LONG grfBINDF,
BINDINFO *pBindInfo,
LPCOLESTR pszHeaders,
LPCOLESTR pszRedir,
UINT uiCP)通过IMoniker 这个接口可以获取下载的URL,但是我要获取要下载的文件名称不知道如何获取?我在SINA或者163的邮箱里,下载附件的时候,名称不知道如何获取?

解决方案 »

  1.   

    有了URL,最后面不就是文件名?
      

  2.   

    LPOLESTR pwszUrl = NULL;
    pmk->GetDisplayName (pbc, NULL, &pwszUrl);
      

  3.   

    正常情况下URL后面是文件名,但是在SINA或者163邮箱里,下载附件的时候,URL是很长的字符串,也根本没有文件名,这个URL就是通过GetDispalyName接口函数获取的,蒋昇大哥我就是用的这个接口,你可以在SINA、163邮件下载附件的时候看一下
      

  4.   

    这种情况,文件名在 GET这个URL的时候,返回的header中Content-Type:image/jpg
    Content-Disposition:attachment; filename="uQtpTse.jpg"
      

  5.   

    请问楼上你说的这个获取头的方法是在哪获取,我在OnbeforeNavigate里叶没获取到呀
      

  6.   

    http://www.codeproject.com/KB/atl/vbmhwb.aspx