Hopefully my first attempt to implement class redirection wasn't committed
---
http://source.winehq.org/patches/data/56761
---
cause it's definitely incomplete.
After some testing I've got new info here (to be added to patch comments
above):
1) not statically linked sxs module is loaded not only on window
creation but
on GetClassInfo() (GetClassInfoEx() is to be tested but I think it's
the same).
This is a case only on vista+ systems, xp doesn't attempt to load
assembly on
GetClassInfo();
2) "versioned" attribute in windowClass element affects redirection
behavior,
when set to "no" user32 doesn't try to load assembly at all.
Second problem requires a FindActCtxSectionString() to actually fill key
data
with undocumented format, I did some dumping basing on length value
reported:
similar way it's done for dll redirection test (with a dword pointer)
and useful
fields are actually obvious - such as classname and module name.
First problem stops me cause I don't know what way to prefer here.
Any advices are welcome.
P.S. Maybe it helps - native returned class data in case of vista+ and
comctl32 v6
contains pointers to winproc as "FFFFxxxx" format, high word is
constant. Personally
I don't know what is supposed to mean, builtin classes without
redirection don't show
such patterns.