thanks Dubby
yah - i am becoming a big fan of Geoff :P
the biggest bits of info i got from his page were:
1) it is implemented in MSHTML
kind of knew that - i knew that it is used by IE to render HTML pages
thus, when images are loaded, it wants a UNICODE URL string
but - i have learned how to make UNICODE URL strings to get files and resources by name or ordinal :P
2) it is used by ListView controls (COMCTL32.DLL) - this i did not know
i may be able to get another example of it's use
i am new to COM and i do not understand the CoInvoke macro - lol
so, i plan to use these TEXTEQU's to call the functions
probably only need a few of them to load images
_IImgCtx_QueryInterface TEXTEQU <dword ptr [eax]> ;This,riid:REFIID,ppvObj:LPVOID
_IImgCtx_AddRef TEXTEQU <dword ptr [eax+4]> ;This
_IImgCtx_Release TEXTEQU <dword ptr [eax+8]> ;This
_IImgCtx_Load TEXTEQU <dword ptr [eax+0Ch]> ;This,pszUrl:PCWSTR,dwFlags:ULONG
_IImgCtx_SelectChanges TEXTEQU <dword ptr [eax+10h]> ;This,ulChgOn:ULONG,ulChgOff:ULONG,fSignal:BOOL
_IImgCtx_SetCallback TEXTEQU <dword ptr [eax+14h]> ;This,pfnCallback:PFNIMGCTXCALLBACK,pvPrivateData:PVOID
_IImgCtx_Disconnect TEXTEQU <dword ptr [eax+18h]> ;This
_IImgCtx_GetUpdateRects TEXTEQU <dword ptr [eax+1Ch]> ;This,prc:RECT*,prcImg:RECT*,pcrc:LONG*
_IImgCtx_GetStateInfo TEXTEQU <dword ptr [eax+20h]> ;This,pulState:ULONG*,psize:SIZE*,fClearChanges:BOOL
_IImgCtx_GetPalette TEXTEQU <dword ptr [eax+24h]> ;This,phpal:HPALETTE*
_IImgCtx_Draw TEXTEQU <dword ptr [eax+28h]> ;This,hdc:HDC,prcBounds:RECT*
_IImgCtx_Tile TEXTEQU <dword ptr [eax+2Ch]> ;This,hdc:HDC,pptBackOrg:POINT*,prcClip:RECT*,psize:SIZE*
_IImgCtx_StretchBlt TEXTEQU <dword ptr [eax+30h]> ;This,hdc:HDC,dstX:INT,dstY:INT,dstXE:INT,dstYE:INT,srcX:INT,srcY:INT,srcXE:INT,srcYE:INT,dwROP:ULONG
from what i have read, installing IE9 broke a lot of code that uses the Draw function
i am hoping that the updated version of MSHTML will still load images, though
it seems to me that the interface can even render animated GIF's
maybe that's one of the uses of the callback function