The problem is that my IExtractIcon implementation is never called because the riid of GetUIObjectOf always is IID_IExtractIconA. I thought that IID_IExtractIcon is set depending you have a Unicode or ANSI dll. Everything is set to Unicode for the project. So as long as I do not check for IID_IExtractIconA it's not working. What's the problem?
the thing is that YOU don't decide which of the 2 versions get called. The application that tries to use the IShellFolder does.
You need to provide both a ansi and unicode version of the IExtractIcon (or live with the fact that your code will only work when someone requests one of them).
Bookmarks