может это поможет:
Код:
![Выделить весь код](images/misc/selectcode.png)
TCHAR sPathTo [] = “c:\\1\\2\\3\\4\\5\\6\\7\\8”;//директория, которую нужно создать
bool AQLCreateDirectory(TCHAR * sPathTo)
{
//пока директория не создана, будем пытаться её создать//
while(CreateDirectory(sPathTo, NULL) == FALSE)
{
/* директория не создана, поэтому нужно сначала создать ”предыдущую” директорию */
TCHAR sTemp[MAX_PATH];
int k = strlen(sPathTo);
strcpy(sTemp, sPathTo);
//пытаемся найти и создать директорию самого “нижнего” уровня
while(CreateDirectory(sTemp, NULL) != TRUE)
{
/* пытаемся найти первичные половые признаки предыдущей директории.... */
while(szTemp1[--k] != '\\')
{
if(k<=1)
return FALSE;/* похоже, что директория создана быть вообще не может!
sTemp[k] = NULL;
}
/* ......а как только нашли - создать её */
}
//во время первого прохода будет создана директория “1”, во время второго – “2” и т.д.
}
return TRUE;
}