Creation des sous repertoires

jabjiji Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
jabjiji Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
je développe une petite application en C++ que simule une boite mail en local. l'utilisateur qui va utiliser cette application pour la première fois on va le créer un répertoire qui porte comme nom son login, dans ce meme répertoire je veux créer des sous répertoire nommés envoyé, reçus, brouillon,...
j'ai réussi à créer le répertoire racine (celui de login) mais j'ai pas réussi a créer les sous répertoires. voici le code
#include <iostream>
#include <windows.h>
#include <string>
using namespace std;

int main()
{
string str;
string env="Envoyés";
string rec="Reçus";
string bro="Brouillon";
LPSECURITY_ATTRIBUTES attr;
attr = NULL;
cout << "Donnez votre login.\n";
cout << "Login:";
cin >> str;
CreateDirectory(str.c_str(), attr);
//cout << "\nFolder Created!\n";
cin.get();
return 0;
}
Merci d'avance pour votre aide
A voir également:

2 réponses

loupius
 
Ah c'est bien du Windaube à utiliser des fonctions perso ! Pourquoi ne pas utiliser le fonction standard du C (mkdir) ? 8:D))

De toutes façons, il suffit de spécifier la bonne chaîne, par exemple:

Supposons être dans un répertoire dans lequel nous voulons crééer un répertoire 'xxx', lequel contiendra un répertoire 'yyy'.
mkdir ("xxx");
mkdir ("xxx/yyy");

Evidemment, sous Waindoze, il faut mettre des antislashs..; et comme en C l'antislash est un caractère spécial:
mkdir ("xxx");
mkdir ("xxx\\yyy");
0
mikebzh Messages postés 135 Statut Membre 28
 
Il te suffit juste de créer une nouvelle chaine str du style "login\\Envoyés" etc...

[code]
........
CreateDirectory(str.c_str(), attr);
str += "\\"
str += env
CreateDirectory(str.c_str(), attr);
..........
[\code]

Et voilà, ne pas oublier de créer les repertoires dans l'ordre.
Salut !
0
jabjiji Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
salut
merci mikebzh pour votre aide.
0