Image 如何将IHTMLImgElement转换为图像

Image 如何将IHTMLImgElement转换为图像,image,automation,save,mshtml,shdocvw,Image,Automation,Save,Mshtml,Shdocvw,我正在使用SHDocVW.dll和带有C的MSHTML自动化Internet Explorer,我希望将页面中的图像保存到磁盘JPEG格式 我无法使用WebClient类下载图像;如果我这样做,我最终会下载网站的登录页面。我也不能打印屏幕,因为在这个过程中,浏览器必须在后台运行,保持不可见 我已尝试做以下工作: IHTMLImgElement imgElement = ...; IHTMLControlRange imgRange = ...; imgRange.add(imgElement

我正在使用SHDocVW.dll和带有C的MSHTML自动化Internet Explorer,我希望将页面中的图像保存到磁盘JPEG格式

我无法使用WebClient类下载图像;如果我这样做,我最终会下载网站的登录页面。我也不能打印屏幕,因为在这个过程中,浏览器必须在后台运行,保持不可见

我已尝试做以下工作:

IHTMLImgElement imgElement = ...;
IHTMLControlRange imgRange = ...;

imgRange.add(imgElement as IHTMLControlElement);
imgRange.execCommand( "copy", false, null );

这没用。我无法从剪贴板中提取任何内容。我找到的每一个解决方案都不适合我

您的webclient方法可能缺少Cookie。。。有关处理Cookie的示例,请参阅


您的代码看起来很好,只是用户必须更改安全设置才能启用剪贴板访问。如果图像缓存在磁盘上,则可以在解析页面后查找图像位置

实际上,我没有使用WebClient类。我正在使用SHDocVW.dll和MSHTML。我改变了我的方法。我现在正在监视Internet Explorer的temp files文件夹,以便知道何时创建新的图像文件。然后我就把它复制到我想要的任何地方。