|
char lpBuff[MAX_PATH], lpPath[MAX_PATH];
BROWSEINFO bRowsInf;
ITEMIDLIST *id, *pbrowse;
IMalloc *imllc;
int i_img;
LPARAM l_param;
CoGetMalloc( 1, &imllc );
memset( &bRowsInf, 0, sizeof(bRowsInf));
SHGetSpecialFolderLocation( Handle, CSIDL_DRIVES, &id );
bRowsInf.hwndOwner = Handle;
bRowsInf.pidlRoot = id;
bRowsInf.ulFlags = BIF_RETURNONLYFSDIRS;
bRowsInf.pszDisplayName = lpBuff;
bRowsInf.lpszTitle = "데이터베이스 백업을 위한 폴더를 지정하십시요.";
bRowsInf.lParam = l_param;
bRowsInf.iImage = i_img;
try{
if( ( pbrowse = SHBrowseForFolder(&bRowsInf) ) != NULL )
{
if (SHGetPathFromIDList(pbrowse, lpPath) == true)
{
edt_Backup->Text = AnsiString(lpPath) + "\\" + AnsiString(lpBuff) + "\\";
}
}
}
__finally{
imllc->Free(pbrowse);
}
imllc->Release();
|