shobjidl.h implementation. Incomplete, but you have to start somewhere...
Might require some library additions, as it refers to
extern const IID IID_ITaskbarList3;
extern const GUID CLSID_ITaskbarList;
I'm not sure if these are available directly from DLLs.
shlobjidl.h
Uploaded a fixed version (with correct method order).
w32api library also requires these two lines:
DEFINE_GUID(IID_ITaskbarList3,0xea1afb91,0x9e28,0x4b86,0x90,0xe9,0x9e,0x9f,0x8a,0x5e,0xef,0xaf);
DEFINE_GUID(CLSID_ITaskbarList,0x56FDF344L,0xFD6D,0x11d0,0x95,0x8A,0x00,0x60,0x97,0xC9,0xA0,0x90);
What source did you use to define IID_ITaskbarList3 and CLSID_ITaskbarList?
I've used a highly secret and completely illegal source. Here's how you access it:
1) Press Winkey+R
2) type in "regedt32"
3) Press Enter
4) Mysterious window will appear
5) Press HOME
6) Press Ctrl+F
7) Type in ITaskbarList
8) Press enter
9) Wait
10) It will find something. Look at the left pane to see the GUID value (it will be selected).
11) Repeat 6-10 as needed (for ITaskbarList2, ITaskbarList3, ITaskbarList4 ...)
Gotta love those top secret sources. Please remove the incorrect file so that I can be sure that I grab the corrected file.
Thank you.
Incidentally, I have:
DEFINE_GUID(CLSID_ITaskbarList,0x56FDF342L,0xFD6D,0x11d0,0x95,0x8A,0x00,0x60,0x97,0xC9,0xA0,0x90);
in HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface, which is slightly different that the value you listed. I've validated this on Windows XP and Windows 8, so I will make this minor change to the values you provided.
Removed the old header.
Also, yes, there's "2" at the end of first QWORD, not "4". I probably mis-typed, or something.
Thank you, committed to CVS.