怎么实现类似安装程序时设置安装目录的功能

如何实现类似安装程序时设置安装目录的功能
如题:我知道vc提供了CFileDialog类用于实现打开或保存文件....vc有没有提供这样的类啊..要能新建文件目录,是类似CFileDialog的界面还是树型显示文件都可以..麻烦提示下..如何实现....

------解决方案--------------------
BROWSEINFO bi; //BROWSEINFO结构体
TCHAR Buffer[512]=TEXT( " ");
TCHAR FullPath[MAX_PATH]=TEXT( " ");
bi.hwndOwner = hDlg; //hDlg你的程序主窗口
bi.pidlRoot = NULL;
bi.pszDisplayName = Buffer; //返回选择的目录名的缓冲区
bi.lpszTitle = TEXT ( "请选择保存的文件夹\n "); //弹出的窗口的文字提示
bi.ulFlags = BIF_USENEWUI;//其他标志看MSDN
bi.lpfn = NULL; //回调函数,有时很有用
bi.lParam = 0;
bi.iImage = 0;
ITEMIDLIST* pidl = SHBrowseForFolder (&bi); //显示弹出窗口,ITEMIDLIST很重要
if(SHGetPathFromIDList (pidl,FullPath)) //在ITEMIDLIST中得到目录名的整个路径
{
//成功
}
else
{
//失败
}

//释放内存
LPMALLOC shellMalloc;
HRESULT hr;
hr = SHGetMalloc(&shellMalloc);
if (SUCCEEDED(hr))
{// Free the shell 's memory
shellMalloc-> Free(pidl);
shellMalloc-> Release();
}