Using Open Directory Dialog

LPITEMIDLIST pidlBrowse;
char         szFolder[MAX_PATH];

BROWSEINFO brInfo;
::ZeroMemory(&brInfo, sizeof(BROWSEINFO));
brInfo.hwndOwner      = m_hWnd; // window handle
brInfo.pidlRoot       = NULL;
brInfo.pszDisplayName =  (char*) szFolder;
brInfo.lpszTitle      = NULL; // window title
brInfo.ulFlags        = BIF_RETURNONLYFSDIRS | BIF_STATUSTEXT; 
brInfo.lpfn           = NULL;
brInfo.lParam         = 0;

::ZeroMemory(szFolder, MAX_PATH);
pidlBrowse = ::SHBrowseForFolder(&brInfo); // show dialog

if(pidlBrowse != NULL) 
{
    ::SHGetPathFromIDList(pidlBrowse, (char*) szFolder); // get directory path
}

Back