首页 新闻 赞助 找找看

c# 如何从webbrowser获取图片?

0
悬赏园豆:30 [已关闭问题] 关闭于 2013-07-11 17:02

我需要获取图片到变量中,网上有以下方法,但无法满足我的需求。因为使用到了剪切板,因为我可能有大量数据多个实例在run,可能会遇到并发访问剪切板的情况,会出错。

请问有没有更好的实现或可以锁定异步访问剪切板也可以?

/// <summary>  /// 返回指定WebBrowser中图片<IMG></IMG>中的图内容  /// </summary>  
/// <param name="WebCtl">WebBrowser控件</param>  
/// <param name="ImgeTag">IMG元素</param>  
/// <returns>IMG对象</returns>  
private Image GetWebImage(WebBrowser WebCtl, HtmlElement ImgeTag)  {      
    HTMLDocument doc = (HTMLDocument)WebCtl.Document.DomDocument;      
    HTMLBody body = (HTMLBody)doc.body;      
    IHTMLControlRange rang = (IHTMLControlRange)body.createControlRange();      
    IHTMLControlElement Img = (IHTMLControlElement)ImgeTag.DomElement; //图片地址      
    Image oldImage = Clipboard.GetImage();      
    rang.add(Img);      
    rang.execCommand("Copy", false, null);  //拷贝到内存      
    Image numImage = Clipboard.GetImage();      
    try     
    {          
        Clipboard.SetImage(oldImage);      
    }      
    catch {}      
    return numImage;  
} 
空明流光的主页 空明流光 | 初学一级 | 园豆:106
提问于:2013-07-09 18:26
< >
分享
所有回答(2)
0

那就加入一个lock

chenping2008 | 园豆:9836 (大侠五级) | 2013-07-10 09:12
0

数据流

香烟爱上火 | 园豆:204 (菜鸟二级) | 2013-07-10 10:51
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册