I want to create a LPSHELLFOLDER according to a path
void CLeftView::ParseSHFromPath(LPCSTR path,LPSHELLFOLDER &psfFolder)
{
LPSHELLFOLDER psfDesktop;
SHGetDesktopFolder(&psfDesktop);
OLECHAR olePath[MAX_PATH]; MultiByteToWideChar(CP_ACP,MB_PRECOMPOSED,path,-1,olePath,MAX_PATH);
LPITEMIDLIST pidl = NULL; psfDesktop->ParseDisplayName(NULL,NULL,olePath,NULL,&pidl,NULL);
psfDesktop->BindToObject(pidl,NULL,IID_IShellFolder,(void**)&psfFolder);
}
Then when i use
STRRET str;
hr=SHGetDesktopFolder(&lpsf,SHGDN_NORMAL,str);
Then a ram error occurred ,can any one help me