[8/21] comctl32: Add basic structure for IImageList interface

Nikolay Sivov bunglehead at gmail.com
Thu Aug 13 01:25:20 CDT 2009

Owen Rudge wrote:
>> This layout is not officially published anywhere, however (nor is the 
>> new one), so I presume it will be acceptable to modify it to fit the 
>> vtable and reference count, etc, in?
Personally I don't see another way to do so.
>> It might conceivably cause problems for any pre-comctl32-v6 app that 
>> tries to poke around the internals (not that they should be anyway),
>> but I can't see any way around that other than having full WinSXS 
>> support implemented and having two separate versions of comctl32, as 
>> in Windows itself.
Agreed. This is actually what stopped me when I tried to implement this 
interface in my local tree. Our current HIMAGELIST layout already is a 
result of debugging - offsets are about to match. The ideal way is to 
match SxS system here and add aV6 target (btw, listview has some minor 
visual difference in v6 comparing to <=5 caused by different padding).
> Hmm, to clarify this, I think I've managed to answer my own question, 
> in that I gather I should just make the changes to HIMAGELIST to 
> incorporate the vtable, etc, into it, abolishing ImageListImpl. I also 
> understand now that I shouldn't have written that little test program, 
> as I did somewhat naïvely, to verify whether the internal structure on 
> Windows matched that in the Wine header, as it could be construed as 
> disassembly. This is a mistake I won't be making again.
Don't know if getting such dumps is allowed or not. But we got current 
layout some way...
> I'll make the appropriate changes tomorrow and re-submit if there are 
> no other issues that need dealing with.
> Cheers,

More information about the wine-devel mailing list