본문 바로가기

MFC, VC++

VC / MFC 이용하여 중첩된 디렉토리를 한 번에 만들기

#include <Shlwapi.h>

 

bool MakePath(LPCTSTR szPath)
{
        char szMake[MAX_PATH];  
        while (1) {
                strcpy(szMake, szPath);
                while (!CreateDirectory(szMake,NULL)) {
                        DWORD dwError = GetLastError();
                        if (dwError != ERROR_CANNOT_MAKE && dwError != ERROR_PATH_NOT_FOUND )
                                return false;
                        if (!PathRemoveFileSpec(szMake))
                                return false;
                }
                if (!strcmp(szMake, szPath))
                         return true;
        }
        return false;
}