Здравствуйте DmitryS, вы писали:
DS>Знаю как создать PIDL,но не знаю как правильно их заполнить( "вручную" ). (cb abID).
PIDL — это opaque структура, только объект папки знает как интерпретировать данные в abID. Те же, кто пользуются интерфейсом IShellFolder, используют методы ParseDisplayName и EnumObjects для получения PIDL.
Вроде бы на RSDN есть статья по shell namespace, советую ознакомиться.