IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

Script déplacement données perso


Sujet :

VBScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2013
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2013
    Messages : 38
    Par défaut Script déplacement données perso
    Bonjour,

    Je suis en train de mettre au point un script destiné à effectuer automatiquement le déplacement vers une autre partition des répertoires de données personnelles (documents, images, etc.) que Windows crée par défaut dans C:\Utilisateurs\nom_utilisateur. Il est sensé fonctionner pour toutes les versions à partir de Wndows 7. Comme il est peu gros j'ai mis le code ici.

    Tout se passe bien sauf pour le répertoire "Mes documents". Le déplacement de son contenu vers le répertoire cible ne s'effectue pas et dans celui-ci apparaît un répertoire "Ma musique" vide. Je précise que le contenu du répertoire source 'Ma musique" est correctement transféré dans son répertoire cible.

    J'ai testé sur deux machines différentes, l'une sous W7 intégrale l'autre sous W7 familial. Le comportement est identique sur les deux.

    Pour faciliter les tests la fin de la boucle for next (modifications du registre et suppression des dossiers source) a été mise en commentaire et un msgbox de contrôle a été ajouté.

    Merci d'avance à ceux qui voudront bien se pencher sur ce problème.

    Heffgé

  2. #2
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Tes fichiers directement dans Documents sont bien copiés j'imagine ?!


    Je pense que le problème doit être du au fait que dans le dossier Documents tu as 3 jonctions NTFS.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <JUNCTION>     Ma musique [C:\Users\ericlm128\Music]
    <JUNCTION>     Mes images [C:\Users\ericlm128\Pictures]
    <JUNCTION>     Mes vidéos [C:\Users\ericlm128\Videos]

    Si c'est bien le problème, le plus sage serait de me pas les copier en parcourant le dossier source, voici un exemple qui s'appuie sur les attributs pour les détecter :
    Code vbs : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    document = Wscript.CreateObject("Wscript.Shell").SpecialFolders("MyDocuments")
    set objFolder = CreateObject("Scripting.FileSystemObject").GetFolder(document)
     
    For Each item in objFolder.SubFolders
    	IsAlias = ((item.Attributes And 1024) = 1024)
    	result = result & item.name & " (" & item.Attributes & ") : Est un Alias = " & IsAlias & vbcrlf
    Next
     
    msgbox result, 0, "Résultat"


    Apparemment pour les faire disparaitres une suppression du dossier semble suffire :
    Lien pour le batch mais le principe reste le même : https://superuser.com/questions/2855...t-in-windows-7

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2013
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2013
    Messages : 38
    Par défaut
    Merci de t'être penché sur ce problème.

    Tes fichiers directement dans Documents sont bien copiés j'imagine ?
    Il faut que je recommence le test mais de mémoire non. Cependant tu as vu juste.

    Nom : alias.png
Affichages : 233
Taille : 4,6 Ko

    Je ne connaissais pas cette notion de jonction et, après lecture de l'article que tu indiques, j'avoue ne pas en comprendre l'utilité. J'ai vérifié pour les autres répertoires, seuls "Mes documents" semble concerné.

    Ces bidules m'enquiquinent bien. Examiner le contenu de "Mes documents" pour les déceler semble être la bonne solution. Je vais quand même avant de procéder ainsi tenter le xcopy via un run et tant pis pour le purisme.

    À noter que lorsqu'on effectue ce type de déplacement avec l'assistant de Windows ces jonctions sont absentes dans le répertoire cible et disparaissent puique le répertoire source est supprimé dans la foulée. Ce qui ne fait qu'ajouter à mon interrogation sur leur utilité dans le cas présent.

    Je te tiens au courant de mes essais.

    Heffgé

  4. #4
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Eh bien c'est une fonctionnalité proposé par le NTFS, Windows s'en sert un peu pour ce type de dossier. Tu en as aussi dans C:\Users

    C'est peu utilisé mais ça peut être pratique mais a utilisé avec parcimonie, c'est comme un raccourci mais en mieux car géré par le système de fichier donc transparent.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    07/12/2019  10:30    <SYMLINKD>     All Users [C:\ProgramData]
    07/12/2019  10:30    <JUNCTION>     Default User [C:\Users\Default]

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2013
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2013
    Messages : 38
    Par défaut
    Je continue de galérer avec ces jonctions. J'arrive maintenant à copier tout le contenu de "mes documents" mais je ne peux pas le supprimer. J'ai toujours une erreur 70.

    Nom : err70.png
Affichages : 219
Taille : 5,6 Ko

    J'ai essayé de modifier l'attribut sans succès. Il reste à 1024. J'ai essayé avec fsutil (cf. ci-dessous) mais toujours pareil.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    set objrep = monsysfic.GetFolder(src)
    set colsrep = objrep.subfolders 
    	For Each srep in colsrep
    		jonc = (srep.Attributes And 1024) = 1024
    		if not jonc then
    			monSysfic.copyfolder src & "\" & srep.name, dest & "\"
    		else
    			Monshell.run "fsutil reparspoint delete" & src & "\" & srep.name, 0, true
    		end if
    	Next
    set objrep = nothing
    set objsrep = nothing
    J'ai pensé que cela pouvait peut-être provenir de l'ordre dans lequel je traitais ces répertoires. Documents étant en dernier les répertoires indiqués en tant que jonction sont déjà supprimés. J'ai donc modifié mon script pour le traiter en premier. J'ai toujours la même erreur et comme je sors de ma boucle for le contenu des autres répetoire n'est pas copié.

    Je suis loin d'avoir tout compris sur ces jonctions et je dois être à côté de la plaque quand je tente de les supprimer.

    Merci d'avance pour une suggestion.

    Heffgé

  6. #6
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Peut être que le dossier Mes Documents est verrouillé par le système ou ton script.

    As tu une erreur avec une tentative de suppression manuel ?
    Et après une réouverture de session (après avec redéfinit le chemin de Mes documents)



    Sinon sur mon Windows 10 en francais j'ai une jonction de Mes documents -> Documents
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <JUNCTION>     Mes documents [C:\Users\Rico\Documents]
    Je ne sais pas si c'est bloquant mais tu pourrais essayer de supprimer Mes documents puis Documents

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 19/12/2007, 10h35
  2. [BO 6.5] Import de fichier de données perso
    Par titi0712 dans le forum Deski
    Réponses: 1
    Dernier message: 17/12/2007, 11h35
  3. [script]script correction données
    Par pouss dans le forum SQL
    Réponses: 5
    Dernier message: 20/09/2007, 17h23
  4. nom de domaine - données persos - redirection
    Par jacky12 dans le forum Domaines
    Réponses: 4
    Dernier message: 14/07/2006, 22h29
  5. script des données de la base
    Par tiboleo dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 25/11/2005, 09h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo