Bonjour,
Je recherche le moyen via un api windows (ou autre) de connaitre le répertoire du profil d'un utilisateur en fournissent son login ou sid et en étant logué sous un compte administrateur.
Merci
Lillo
Version imprimable
Bonjour,
Je recherche le moyen via un api windows (ou autre) de connaitre le répertoire du profil d'un utilisateur en fournissent son login ou sid et en étant logué sous un compte administrateur.
Merci
Lillo
Normalement, c'est la fonction GetUserProfileDirectory qui te donnera ça.
Bonjour,
Mes divers recherchent sur google, m'avais également amené sur GetUserProfileDirectory, le problème avec cette fonction c'est qu'il faut le token de l'utilisateur, hors je suis logué sur un compte administrateur, je récupère la liste des utilisateurs et je voudrais connaitre leur dossier profil.
Existe t-il une fonction (non .NET) qui me permette de travailler avec le login ou sid de l'utilisateur.
Merci d'avoir répondu
Lillo
Tu as suivi les liens à partir de GetUserProfileDirectory, sur les tokens ? Je n'ai pas regardé, mais il serait très étonnant qu'il ne soit pas fait mention d'une fonction/procédure pour créer un token sur un compte utilisateur...
Sinon, si tu as le nom du compte, tu peux normalement en déduire le répertoire du profil de l'utilisateur directement, en concaténant le login en question au répertoire de base des profils.
Pour la concaténation du login avec le répertoire de base des profils j'aimerais éviter cette solution, rien ne me garantie que le nom du login correspond au dossier dans les répertoire de profil.
Effectivement il y a un lien pour créer un token, mais il faut le mot de passe des utilisateurs pour utiliser la fonction LogonUser.
Tu as regardé les fonctions LookupAccountSid et LookupAccountName pour trouver le SID d'un utilisateur et inversement.
Ainsi que la fonction SHGetFolderPath pour avoir son répertoire.
Bonjour,
Pour le SID pas de problème pour le récupérer, pour utiliser SHGetFolderPath il faut le Token de l'utilisateur, hors je suis connecter sous un autre login avec droit admin.
Je développe une application de migration de profil (workgroup vers domaine qui utilise l'outil W2D301), l'idée est de sélectionner les utilisateurs à migrer, déterminer leur dossier local et effectuer la migration.
Merci
Sinon, autre solution (je sais pas si elle est fiable à 100% :roll:), regarde dans la base de registre les clés :
Citation:
HKEY_USERS\SID\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
Effectivement se serais une piste.
Il faudrait chargé la ruche de l'utilisateur et lire les info. Je ne sais pas c'est fiable à 100% :(
Merci
Bonjour,
Voila que je me réveille :D, à l'époque je m'étais passé du dossier utilisateur, mais il y à quelques jours j'ai est encore eux besoin de connaître le dossier de tous les utilisateurs locaux. Pour ceux que sa intéresse
HKLM SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\SIDUTILISATEUR la sous clef ProfileImagePath contiend le dossier du profil.
C'était si simple :arf: