当然前提是:不能先得到图片网址再手动下载可以想到的方法是取得图片在ie缓存里对应的文件再读它,但感觉不是很可靠,似乎不能保证图片一定在ie缓存里。
既然图片已经显示了,肯定在本地是存放了它的数据的。看来一下IHTMLImgElement相关的方法,似乎没有提供相应的功能。请教有没有甚么更直接的方法可以得到图像数据?
像素数据就好,如果不能得到完整源文件的话。多谢!

解决方案 »

  1.   

    http://support.microsoft.com/kb/293125/zh-tw
    http://topic.csdn.net/t/20001104/23/38301.html
      

  2.   

    To 楼上的:
    1. 的方法试过,理论上是可以的,因为复制之后再在explorer里粘贴就可以把图像文件复制下来(不过这样粘似乎还是就相当于拷ie缓存里的文件,因为和缓存里的文件名都是一样的:类似 info[1] 的形式,并且后缀丢失了)。但这样又牵涉到剪贴板编程,太复杂了,暂不考虑。
    2. 不是我想要的。得到html源码还是比较方便的,呵呵不过还是非常感谢
      

  3.   

    要不直接下
    URLDownloadToFile(NULL,"http://www.codeproject.com/mditab.gif","D:\\1.gif",0,NULL);
      

  4.   

    To get the cached version of the image, use URLDownloadToCacheFile 
      

  5.   

    URLDownloadToFile 也不见得就一定下两遍吧?不行的话可以直接用Wininet API 下载,可以用Flag控制是否从Cache中获取(基本根IE行为一样)
      

  6.   

    唉,貌似只能从缓存里弄了。
    目前是用 GetUrlCacheEntryInfo() 直接得到缓存的文件再复制,就测试的结果看似乎绝大多数图像都可以在缓存里找到。
    结论,多谢各位:)