C ++ MFC crea IShellItem desde CLSID (GUID)

Tengo que crear un ShellItem para Windows Help y Windows Run ...

tengo esto

Help and Support    {2559a1f1-21d7-11d4-bdaf-00c04f60b9f0}
Run {2559a1f3-21d7-11d4-bdaf-00c04f60b9f0}

desdehttp://www.sevenforums.com/tutorials/110919-clsid-key-list-windows-7-a.html

He intentado

IShellFolder* desk = NULL;
HRESULT hr =SHGetDesktopFolder(&desk);
LPITEMIDLIST pidl2=NULL;
            ULONG cbEaten;
            DWORD dwAttribs = 0 ;

            hr = desk->ParseDisplayName(NULL,
                                         NULL,
                                         L"::{2559A1F1-21D7-11D4-BDAF-00C04F60B9F0}",
                                     &cbEaten,  // This can be NULL
                                         &pidl2,
                                         &dwAttribs);

Devuelve OK pero nulo como pidl2.

¿Podrían ustedes ayudarme?

Respuestas a la pregunta(1)

Su respuesta a la pregunta