中国开发网: 论坛: 程序员情感CBD: 贴子 189711
李战
这种问题并非编程技巧问题,而仅仅是知道不知道的问题,就不买关子了。
要把HTML字符串直接载入WebBrowser,只须把WebBrowser.Navigate('about:blank'),然后把其document属性当作IPersistStreamInit接口,并装载HTML字符流即可。

要让WebBrowser直接读取图片等资源,需要自己实现一个支持IInternetProtocol的对象类来处理某些特殊的协议,如cid。如果将其类的GUID登记到HKEY_CLASSES_ROOT\PROTOCOLS\Handler下,则所有的地方都支持这种协议的处理。

也可以不登记到注册表中,而仅在本进程中使用,这时需要用UrlMon单元(UrlMom.dll)中的CoInternetGetSession来取得一个IInternetSession接口,向该接口登记你自己实现的协议处理器的类工厂。这样,WebBrowser就只在你当前进程中处理那些自定义协议,不影响其他程序。

就是这样,具体可参见
http://msdn.microsoft.com/workshop/networking/pluggable/pluggable.asp
李战(leadzen)

相关信息:


欢迎光临本社区,您还没有登录,不能发贴子。请在 这里登录