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 :

Gestion des "noms longs"


Sujet :

VBScript

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Gestion des "noms longs"
    Bonjour à tous.


    Après recherches et test, je me permet de poster sur ce forum pour vous demander votre aide.

    Le problème est simple.

    J'aimerais par le biais d'un script vbs copier un ou plusieurs fichiers dans le profil utilisateur courant.

    J'utilise le script suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim oFSO
    Set oFSO = CreateObject("Scripting.FileSystemObject")
    oFSO.CopyFile "c:\test.txt","D:\Documents and Settings\%username%\temp\test.txt",True
    J'obtien l'erreur "chemin d'accès introuvable"

    J'ai testé avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim oFSO
    Set oFSO = CreateObject("Scripting.FileSystemObject")
    oFSO.CopyFile "c:\test.txt","D:\Docume~1\%username%\temp\test.txt",True
    Mais idem.


    C'est très certainement tout bête, mais je n'ai pas trouvé la solution.

    Merci pour votre aide.

    Cdlt.


    Je précise que le rep "temp" est bien présent sous le profil de l'utilisateur

  2. #2
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Tu es sur qu'il ne faut pas d'abord remplacer %username% par sa valeur ? (via un truc qui doit s'appeller ExpandEnvironmentVariables ou autres, je connais pas le VBS).

  3. #3
    Nouveau membre du Club
    Inscrit en
    Avril 2005
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 55
    Points : 37
    Points
    37
    Par défaut
    A mon avis ton erreur vient du %username%.
    Essaye ce code à la place de %username% :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
            Set WshShellObj = WScript.CreateObject("WScript.Shell")
    	Set WshProcessEnv = WshShellObj.Environment("Process") 
    	User = WshProcessEnv("USERNAME")

  4. #4
    Membre averti
    Inscrit en
    Août 2007
    Messages
    302
    Détails du profil
    Informations personnelles :
    Âge : 57

    Informations forums :
    Inscription : Août 2007
    Messages : 302
    Points : 341
    Points
    341
    Par défaut
    Citation Envoyé par opsi Voir le message
    A mon avis ton erreur vient du %username%.
    Essaye ce code à la place de %username% :
    je pense pareil mais du coup n'oublie pas de remplacer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    oFSO.CopyFile "c:\test.txt","D:\Documents and Settings\%username%\temp\test.txt",True
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    oFSO.CopyFile "c:\test.txt","D:\Documents and Settings\" & User & "\temp\test.txt",True
    A++
    Plus tu pédales moins vite, moins t'avances plus vite.

  5. #5
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Citation Envoyé par smyley Voir le message
    Tu es sur qu'il ne faut pas d'abord remplacer %username% par sa valeur ? (via un truc qui doit s'appeller ExpandEnvironmentVariables ou autres, je connais pas le VBS).
    Il s'est trompé de forum ou tu te mets au VBS ?


    Pareil je pense que le problème viens de %username% :

    1) De la façon dont tu l'as placé dans la string il est considéré comme du texte et n'est pas interprété autrement par l'interpréteur vbs.

    2) %username% sortis du string n'est pas connu par l'interpréteur, il ne sait pas ce que tu lui racontes.

    3) %username% est utilisé dans d'autre langage pour obtenir la valeur de la variable d'environnement username et ce n'est pas la bonne manière en VBS.

    4) Suit la méthode d'opsi et n'oublis pas le conseil de RadPAT.
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  6. #6
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Citation Envoyé par ced600 Voir le message
    Il s'est trompé de forum ou tu te mets au VBS ?
    Trompé de forum, tu penses bien !

  7. #7
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Tu me rassure.
    A un moment j'ai eu peur
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Merci pour votre aide

    J'ai pas encore pris le temps de tester.

    Et effectivement, je débute dans le vbs un peu par la force des choses et je m'était aussi je pense trompé de forum puisque mon sujet à été déplacé.

    Parfois, on cumule ........

    @+

Discussions similaires

  1. [Turbo Pascal] Unité DOS70 : Gestion des noms longs de fichiers
    Par forum dans le forum Codes sources à télécharger
    Réponses: 2
    Dernier message: 26/09/2014, 20h41
  2. gestion des quotes
    Par c+cool dans le forum Langage SQL
    Réponses: 6
    Dernier message: 12/08/2008, 08h51
  3. RegExp : gestion des noms accentués
    Par lord_paco dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 16/06/2005, 09h42

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