파일 선택 기능은 도구를 만들다 보면 자주 필요한 기능입니다. 간단하게 사용법만 예제로 정리해 둡니다.
char old_directory[MAX_PATH];GetCurrentDirectory(sizeof old_directory, old_directory);OPENFILENAME open_file_name = {};open_file_name.lStructSize = sizeof open_file_name;open_file_name.hwndOwner = NULL;open_file_name.lpstrFilter = "파일(*.ext)\0*.ext\0모든 파일(*.*)\0*.*\0";char file_path[MAX_PATH] = {};open_file_name.lpstrFile = file_path;open_file_name.nMaxFile = sizeof file_path;open_file_name.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST;if (GetOpenFileName(&open_file_name) != FALSE){// GetOpenFileName이 현재 디렉토리를 바꿔 버리므로, 원래 디렉토리로 되돌려야 합니다. 만약 현재 디렉토리가 바뀌게 하고 싶지 않으면, OFN_NOCHANGEDIR 플래그를 추가해야 합니다.SetCurrentDirectory(old_directory);// 여기에서 open_file_name.lpstrFile를 이용해 필요한 일을 처리하면 됩니다.}

댓글을 달아 주세요