반응형
// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
ITEMIDLIST *pidlBrowse;
WCHAR pszPathname[MAX_PATH];
BROWSEINFO BrInfo;
BrInfo.hwndOwner = GetSafeHwnd();
BrInfo.pidlRoot = NULL;
memset(&BrInfo, 0x00, sizeof(BrInfo));
BrInfo.pszDisplayName = pszPathname;
BrInfo.lpszTitle = _T("Select folder");
BrInfo.ulFlags = BIF_RETURNONLYFSDIRS;
// 이벤트에 대한 사용자정의 함수
// BrInfo.lpfn = BrowseCallbackProc;
// 사용자정의 함수에 넘겨질 인자로 사용자가 설정하고자 하는 경로를 설정한다.
// 예를들어 초기폴더경로를 C드라이브로 설정하는 경우
CString strInitPath = _T("C:\\");
BrInfo.lParam = (LPARAM)strInitPath.GetBuffer();
pidlBrowse = ::SHBrowseForFolder(&BrInfo);
if (pidlBrowse != NULL)
{
// 선택된 폴더 경로얻음
SHGetPathFromIDList(pidlBrowse, pszPathname);
// 경로(pszPathname)를 이용하여 이후작업 추가
UpdateData();
m_edit_folder = pszPathname;
UpdateData(FALSE);
}
'Programming' 카테고리의 다른 글
| [MFC] LPSTR, LPCSTR, LPTSTR, LPCTSTR , LPWSTR, LPCWSTR 의미 (0) | 2015.09.14 |
|---|---|
| MFC에서 컨트롤의 탭 순서 바꾸기 (0) | 2015.09.11 |
| 킬로, 메가, 기가... 단위별 표기법 (0) | 2015.07.20 |
| Eclipse 자주 쓰는 단축키 (0) | 2014.11.12 |
| Python 파이썬 한글주석 오류날때 (0) | 2014.06.08 |