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

C++ Discussion :

SHFileOperation et copie multiple


Sujet :

C++

  1. #21
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 223
    Par défaut
    Camboui > La raison de ce code de "cochon", c'est que le repertoire DEV n'est là que pour l'exemple. DEV, c'est simple, on connait clairement la taille de cette chaine de caractère, il est donc simple de se dire :

    "Ok, D E V ça fait 3, on ajoute le "\0" et ça nous fait 4, donc je met le paramètre a 4."

    Le soucis, c'est qu'a terme, je ne connaitrais pas les noms des répertoires a copier, et ne les connaissant pas, je ne pourrait déduire leurs taille qu'en passant par un traitement supplémentaire (cf ton poste un peu plus haut).

    En traitant le code comme je l'ai fait, plus besoins de se soucier de la taille du repertoire, on ajoute simplement le "\0" a la fin.

    Je vais donc pouvoir lister la totalité des répertoires de ma partition, et y ajouter "\0" a chaque fois, sans me soucier de la taille des noms des répertoires que j'aurais listé.

    Je me retrouve donc avec une variable path1, a laquelle je peut assigner n'importe quel repertoire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    src+=":\\";
    	string path1 = "DEV";     // DEV ou AUTRE CHOSE 
     
    	string lettre (src.c_str(),3);
    	lettre+=path1+string("\0",1);
    	lettre+=src;
    	lettre+="*"+string("\0\0",2);
    Voila. Merci pour votre aides en tout cas .

  2. #22
    Membre éclairé
    Inscrit en
    Avril 2005
    Messages
    1 110
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 1 110
    Par défaut
    cf le post #16 alors.

    Sinon, ceci est plus bô je trouve
    Citation Envoyé par Altess Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    	src+=":\\";
    	string path1 = "DEV";     // DEV ou AUTRE CHOSE 
     
    	string lettre (src);
    	lettre+=path1;
    	lettre.append(1u,'\0');
    	lettre+=src;
    	lettre+="*";
    	lettre.append(1u,'\0');//pas besoin d'ajouter un deuxième
    	// et dernier '\0', il sera spontanément ajouté par c_str()

  3. #23
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 223
    Par défaut
    Merci Camboui

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Copie Multiples en Lisp pour AutoCad
    Par grekenski108 dans le forum Lisp
    Réponses: 0
    Dernier message: 14/09/2012, 01h40
  2. Réponses: 8
    Dernier message: 26/09/2011, 14h44
  3. [XL-2003] Copie multiple d'une cellule
    Par demongin dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 24/06/2010, 13h55
  4. Copies multiples de données d'une base SQL à une autre
    Par leymiris dans le forum Langage SQL
    Réponses: 4
    Dernier message: 09/11/2008, 16h46
  5. Probleme de copie multiple
    Par blondelle dans le forum C++Builder
    Réponses: 12
    Dernier message: 11/09/2006, 16h50

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