mshtml and friends
jacek at codeweavers.com
Tue Sep 28 09:14:53 CDT 2010
On 9/28/10 2:59 PM, Reece Dunn wrote:
> The current state of support for the Internet Explorer components in
> Wine is good, but there are applications that don't work with it
> because they are dependent on more of the functionality provided by
> Internet Explorer via the WebBrowser control.
> I have had a scan through some of the mshtml code, and see various
> things not handled -- such as the onload handler of the HTMLBody
> element -- but I am not very familiar with this area.
onload is handled properly on body element, it's just getter/setter that is
a stub. It's a trivial one line patch that implements them. The fact that
they are stubs means that I've never seen them used in apps I was working on.
Most MSHTML APIs are trivial Gecko API wrappers. They are easy to
implement, the only problem is that there are really many functions to
implement. I implement only ones that are needed for real apps. The hard
part of MSHTML is in the few APIs that are not just wrappers and not
directly exposed parts like loading the document.
> I am interested in helping out to improve this area -- my aim is to
> not require the `winetricks ie6` command to get some of these
> applications (specifically the Big Fish Games client) to a usable
> Therefore, I am wondering if anyone knows where the best place is to
> start looking (e.g. known areas of missing functionality) or how to
> debug applications (and interpret WINEDEBUG output) to identify where
> the issues are.
There is no single answer. You want mshtml debug channel for most cases. If
the problem is with embedding document in an app, then shdocvw is also
useful. If you have scripts that don't work (and we use jscript for them),
then jscript debug channel is the answer. If you have a problem with
loading document, I'd add urlmon,wininet channel.
More information about the wine-devel