Créer un fichier ds documents and settings\utilisateur courant

Résolu
leprov Messages postés 1160 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 octobre 2010 - 28 août 2004 à 21:52
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 30 août 2004 à 01:14
salut a tous
je voudrais simplement connaitre la variable windows de chemin (si elle existe, et si elle est utilisable d'un prog en c++, au cas ou ma question serait pas claire, ca serait une variable windows genre "%systemroot%", mais pour le chemin que je demande ici) pour documents and settings\utilisateur courant, ou sinon la methode qui permette de récupérer le nom d'utilisateur afin de créer un fichier ds ce dossier(fichier de config).
merci d'avance.

10 réponses

Maegis Messages postés 101 Date d'inscription vendredi 15 février 2002 Statut Membre Dernière intervention 6 août 2007
29 août 2004 à 00:17
Une petite recherche dans la MSDN (10 sec)

BOOL GetUserName(
LPTSTR lpBuffer, // address of name buffer
LPDWORD nSize // address of size of name buffer
);

Voila ça te retourne le nom de l'utilisateur courant
3
leprov Messages postés 1160 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 octobre 2010 17
29 août 2004 à 13:36
merci, je me suis pris la tete pr capter comment l'utiliser, mais ca marche....au cas ou qqun regarderais ce forum apres pr l'aide, voici mon code :

ifstream is;
DWORD Size = UNLEN + 1;
TCHAR UserName[UNLEN + 1];
GetUserName (UserName, &Size);
stringstream Str;
Str << "C:\\Documents and Settings\" << UserName
<< "\\cfg.txt";
is.open(Str.str().c_str());
3
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
29 août 2004 à 00:14
Regarde SHGetSpecialFolderPath() dans MSDN.

Les dossiers personnels:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders

ciao...
BruNews, Admin CS, MVP VC++
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
29 août 2004 à 20:29
A ne jamais faire, il y a API ou base de registres pour trouver ces chemins qui pourraient tres bien etre ailleurs suivant l'installation du systeme.

ciao...
BruNews, Admin CS, MVP VC++
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
leprov Messages postés 1160 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 octobre 2010 17
29 août 2004 à 21:12
il est pas ds la bdr....j'ai regardé, au depart cest ce ke jesperais trouver mais jai pas vu....
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
29 août 2004 à 21:29
Alors je repete:

Les dossiers personnels:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders

lis par exemple la valeur 'SendTo' et recule pointeur de 6 par rapport a la fin et ainsi tu as le dossier.
Facile a adapter non ?

ciao...
BruNews, Admin CS, MVP VC++
0
leprov Messages postés 1160 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 octobre 2010 17
30 août 2004 à 00:35
pk reculer le pointeur de 6??????
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
30 août 2004 à 00:41
pour n'avoir que la base du dossier 'user', pas ce que tu voulais ?

ciao...
BruNews, Admin CS, MVP VC++
0
leprov Messages postés 1160 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 octobre 2010 17
30 août 2004 à 00:54
bah si mais je veux dire, quel est l'effet exact de décaler la pointeur de 6?
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
30 août 2004 à 01:14
RegQueryValueEx te dira dans le dernier param combien d'octets inseres dans ton buffer.
buffer+len-6 , soit tu y mets un ZERO pour avoir le dossier soit tu es pret pour chainer autre chose, voila tout.

ciao...
BruNews, Admin CS, MVP VC++
0
Rejoignez-nous