直接将HTML注入IE新窗口中

来源:互联网 发布:网络预约出租汽车经营许可证 编辑:程序博客网 时间:2024/04/29 02:58
今天偶然看到一篇老外的BLOG,讲如何直接将HTML注入到IE的新窗口中去.什么意思呢?其实就是这样,
在.net中,通过调用IE的对象模型(COM的),首先在.NET中,添加对COM的引用,加入Microsoft Internet Controls and Microsoft HTML Object Library. , 之后的代码为

public void DisplayHTML(string html)
{
    // Open up a new Internet Explorer.

    SHDocVw.InternetExplorer ie = new SHDocVw.InternetExplorerClass();

    SHDocVw.IWebBrowserApp wb = (SHDocVw.IWebBrowserApp) ie;
    wb.Visible = true;

    object noValue = System.Reflection.Missing.Value;
    wb.Navigate("about:blank", ref noValue, ref noValue, ref noValue, ref noValue);

    // Get access to its document.

    mshtml.IHTMLDocument2 htmlDoc2 = ie.Document as mshtml.IHTMLDocument2;                 

    // Update the document.

    htmlDoc2.writeln(html);
    htmlDoc2.close();
}


调用的方法
DisplayHTML("<title>Browser Demo</title><b>Hello</b><br><i>world</i>");

呵呵,其实也挺简单的,就是向方法中传入HTML串,然后调用IE对象模型的一些方法,打开一个IE新窗口,显示里面的内容,但可惜其中的一些参数我还没找到介绍.这用在什么地方呢?呵呵,用在WINFORM中比较好,可以在WINFORM中调用IE了.