How to convert LPITEMIDLIST to CSIDL
Hi!
Could somebody please help...
I have an LPITEMIDLIST returned by ::SHBrowserForFolder().
If it's not a virtual folder, I use ::SHGetPathFromIDList() to get the path.
But if it IS a virtual folder, the above-mentioned func returns an empty string.
How can I get a pathname to a virtual folder returned by ::SHBrowserForFolder?
Thanks :)
Re: How to convert LPITEMIDLIST to CSIDL
Hi! And thanks for the answer :)
It returns sth like "Control Panel", or "My computer" but not the path. Anyway, I found out how to open virtual folders.
::ShellExecuteEx().
How to "convert" the PIDL returned by ::SHBrowseForFolder() to a CSIDL_XXX value is another question :)
Anyway, I guess I can call ::SHGetSpecialFolderLocation() in a loop, comparing the PIDL returned to my PIDL (returned by ::SHBrowseForFolder()).
Maybe there're some other ways...
Robin