[R] Renommage du nom de dossier "Mes documents" suite à un

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
rico60
Niveau 1
Niveau 1
Messages : 5
Enregistré le : mer. 31 juil. 2013 10:54
Status : Hors ligne

[R] Renommage du nom de dossier "Mes documents" suite à un

#1

Message par rico60 »

Bonjour,

Je commence l'Autoit, et j'avoue sécher depuis deux jours à chercher la fonction adéquate pour finaliser mon script.
Pour commencer, je suis amené à déployer un grands nombres de postes en Windows Seven dans mon entreprise, une des actions à réaliser lors de l'installation d'un poste, lors de l'ouverture de la session user, est de déplacer et renommer son dossier "Mes documents" , présent dans %USERPROFILE%\Documents =====> D:\"le nom de l'utilisateur"

J'ai réussi à récupérer le nom du user en cours avec la macro @UserName et à modifier l'emplacement du dossier "Mes documents vers D:\, mon soucis est qu'il n'a pas modifié le nom du dossier en le déplacement vers D:\
ex user jeandupont, changement d'emplacement mes documents vers d:\ ok, lorsqu'on fait clic propriété du dossier le chemin qui apparait est d:\jeandupont ok, mais en visu depuis d:\ on ne voit pas le dossier jeandupont mais toujours Mes Documents. :evil:

► Afficher le texte
J'ai collé ci-dessus mon code qui est fonctionnel; mes lamentables essais avec des fonctions pour renommer le dossier ne sont pas montrables lol, j'ai tenté le Dircopy, le DirRemove...

Bref si vous pouvez éclairer ma lanterne pour finaliser ce petit script, cela serait sympa. :D
Modifié en dernier par rico60 le jeu. 01 août 2013 11:59, modifié 1 fois.
Manox
Niveau 3
Niveau 3
Messages : 43
Enregistré le : mar. 18 déc. 2012 10:56
Status : Hors ligne

Re: [..] Renommage du nom de dossier "Mes documents" suite à

#2

Message par Manox »

Si tu supprimes le fichier caché desktop.ini (à la racine du dossier) ça devrait fonctionner.

je te revoie sur le siteduzero pour plus d'info
http://www.siteduzero.com/informatique/ ... esktop-ini

Edit: Tu t'es largement compliqué la vie j'ai l'impression ... ceci aurait suffit je pense ?

Code : Tout sélectionner

DirMove(@MyDocumentsDir, "D:\" & @UserName)
http://www.autoitscript.com/autoit3/doc ... irMove.htm
rico60
Niveau 1
Niveau 1
Messages : 5
Enregistré le : mer. 31 juil. 2013 10:54
Status : Hors ligne

Re: [..] Renommage du nom de dossier "Mes documents" suite à

#3

Message par rico60 »

Merci Manox, effectivement j'ai testé la commande

Code : Tout sélectionner

FileDelete("d:\"& $nomuser &"\desktop.ini")


Cela a fonctionné, mon dossier affiche maintenant la valeur récupérée par ma variable.

Je pense que tu as raison au niveau de mon code, d'autant plus que bizarrement la commande {BACKSPACE} fonctionne mal dans mon code très souvent elle bloque et ne remonte pas au niveau du dossier parent.... alors qu'en faisant le même algo avec un dossier lambda pas de soucis :?: :?:

j'essaierai ta ligne de code demain.

Sinon merci aussi pour le lien desktop.ini, vraiment bien ce site, je suis déjà leur tutorial complet sur Autoit :)
rico60
Niveau 1
Niveau 1
Messages : 5
Enregistré le : mer. 31 juil. 2013 10:54
Status : Hors ligne

Re: [..] Renommage du nom de dossier "Mes documents" suite à

#4

Message par rico60 »

Pour le DirMove cela fonctionne mais trop justement :lol: , car l'idée c'est que lorsque l'utilisateur clic sur le raccourci bureau portant son nom, le dossier "Mes documents" apparaisse toujours avec mes images, ma music, etc, seul l'emplacemnt physique des données doivent être déplacées vers d:\@username.

Avec le dirmove le dossier "Mes documents" disparait du dossier user sous c:\....
rico60
Niveau 1
Niveau 1
Messages : 5
Enregistré le : mer. 31 juil. 2013 10:54
Status : Hors ligne

Re: [R] Renommage du nom de dossier "Mes documents" suite à

#5

Message par rico60 »

Hello,

Help, j'avance dans mon script mais comme je débute je bloque sur un truc facile je pense....

Code : Tout sélectionner

Send("#r")
WinWaitActive("Exécuter")
Send("%USERPROFILE%\Videos\")
Send("{ENTER}")
sleep(1000)
WinWaitActive("Mes videos")
FileDelete("C:\Users\"& @UserName &"\Videos\desktop.ini")
Send("{BACKSPACE}")
mon code fonctionne jusqu'au positionnement dans le dossier "Mes Videos", mais ne veut pas passer à l'instruction suivante? J'ai essayer de mettre la commande sleep mais ça ne change rien, j'ai parcouru l'aide,
mais je n'ai aucune idée d'ou cela peut venir :?:

PS: s'agissant toujours du même script et de manipulation de dossiers je n'ai pas recréé un nouveau post.

édit: bon bah je viens de trouver :( j'ai oublié " ' " sur le é de vidéo commande WinWaitActive("Mes vidéos")
Modifié en dernier par rico60 le jeu. 01 août 2013 11:58, modifié 1 fois.
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Renommage du nom de dossier "Mes documents" suite à

#6

Message par jguinch »

Salut rico60.
Quel est le but du code, juste supprimer un fichier ?
Dans ce cas, seul la ligne FileDelete("C:\Users\"& @UserName &"\Videos\desktop.ini") suffit
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
rico60
Niveau 1
Niveau 1
Messages : 5
Enregistré le : mer. 31 juil. 2013 10:54
Status : Hors ligne

Re: [..] Renommage du nom de dossier "Mes documents" suite à

#7

Message par rico60 »

Le but est de déplacer "Mes Vidéos" (ou autre) du dossier user vers d:\"Mes Vidéos" avec un renommage du dossier en @UserName.

Merci grâce à vos réponses cela fonctionne et je vais bientôt finir mon premier script Autoit hipipip Youra :lol:

Me reste plus qu'à trouver comment modifier la sécurité du dossier, mais cela devrait le faire.
Manox
Niveau 3
Niveau 3
Messages : 43
Enregistré le : mar. 18 déc. 2012 10:56
Status : Hors ligne

Re: [R] Renommage du nom de dossier "Mes documents" suite à

#8

Message par Manox »

Rico60,

Vous voulez juste sauvegarder "Mes Documents" sur le D:\@username ?

Si c'est la cas vous pouvez simplement utiliser :

Code : Tout sélectionner

DirCopy(@MyDocumentsDir, "D:\" & @UserName)
Le code que vous utilisez est, à mon avis, trop compliqué pour cette simple tâche, surtout que si vous devez lancer ce code lorsque qu'un utilisateur utilise son poste, les intéractions entre votre script et l'utilisateur peuvent-être problématique.
Répondre