0

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

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

我试图做以下事情:

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

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

这无济于事。我无法从剪贴板中提取任何内容。我发现的每个解决方案都对我不起作用。

4

1 回答 1

0

您的网络客户端方法可能缺少 cookie...请参阅如何使用 WebClient 登录站点?有关处理 cookie 的示例。

您的代码看起来不错,除了用户必须更改安全设置以启用剪贴板访问。如果图像缓存在磁盘上,您可以在解析图像位置的页面后挖掘 WinInet 缓存。

于 2015-06-06T20:21:55.813 回答