小弟目前有个项目,需要对传递过来的Html源代码进行解释,如果html里面有JavaScript函数,那么就用C#模拟执行脚本,注意,这些脚本里面可能会有对html元素进行操作的,也需要将执行结果返回给html,然后将执行完成的html返回给前端。
以前用过WebBrowser控件,但是这个控件无法在多线程里面使用。急求一解决方案。各位高手帮帮忙。拜谢

解决方案 »

  1.   

    http://blog.csdn.net/zhzuo/archive/2004/04/26/22031.aspx可以上去看看这个
      

  2.   

    你相当于要开发一个浏览器内核.光运行javascript不麻烦. 微软提供现成的解析引擎. 但是你光运行还不够, 因为你需要的是DHTML, 将DOM对象(window, document)等传入javascript引擎, 才能执行document.write等等方法.所以, 你需要:
    1. 实现一个javascript引擎, 可以解析javascript源代码并执行, 这个很容易, 网上有现成的.
    2. 实现Window, Document, Navigator, History等一系列DOM对象, 将这些对象和javascript引擎上下文环境绑定, 不然javascript引擎解析到window.alert它根本不知道怎么去执行.工作量和难度都挺大的. 参考webkit或者gecko.
      

  3.   

    建议到SourceForge上寻找现成的开源产品替代。
      

  4.   

    试了下
    可以用webbrowser
    关键是多线程用sta模式
    多谢各位大侠
    不过先不结贴
    看看有没有更优方案