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

Owen Rudge owen at owenrudge.net
Wed Aug 12 17:31:32 CDT 2009

> You can't do that. HIMAGELIST should be the same thing as IImageList. 

Hmm. Looking at the HIMAGELIST/IImageList internals in a debugger on 
Windows, the layout appears to be entirely different to the HIMAGELIST 
layout defined in dlls/comctl32/imagelist.h (as you'd expect -the 
vtable, etc, needs accommodating). Judging by the comments in 
imagelist.h, the layout of the structure was designed to imitate the 
Windows layout (or an earlier version thereof).

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? 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.


Owen Rudge

More information about the wine-devel mailing list