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

MFC Discussion :

Déplacer des fichiers


Sujet :

MFC

  1. #1
    Nouveau membre du Club
    Inscrit en
    Août 2006
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 34
    Points : 32
    Points
    32
    Par défaut Déplacer des fichiers
    Bonjour,

    Je fais une appli avec c++/MFC et je souhaiterais savoir si quelqu'un a une idée pour déplacer un fichier.
    Je m'explique, l'utilisateur choisit plusieurs fichiers et j'aimerais les déplacer dans un répertoire commun dont l'adresse est connu. Est que quelqu'un a une idée?
    Est ce que quelqu'un pourrait m'aider? MERCI

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut ,
    utilise la fonction MoveFile.
    attention si c'est pas sur le même repertoire ça échoue.
    il faudra faire dans ce cas un CopyFile suivi d'un DeleteFile


  3. #3
    Nouveau membre du Club
    Inscrit en
    Août 2006
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 34
    Points : 32
    Points
    32
    Par défaut
    Citation Envoyé par farscape
    salut ,
    utilise la fonction MoveFile.
    attention si c'est pas sur le même repertoire ça échoue.
    il faudra faire dans ce cas un CopyFile suivi d'un DeleteFile


    J'ai déjà essayé d'utiliser MoveFile mais ce n'est pas une fonction de la classe CFile,il me semble?
    Sinon si c'est compatible avec les MFC, je ne sais pas l'utiliser......

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    c'est l'api windows !
    BOOL MoveFile(
    LPCTSTR lpExistingFileName,
    LPCTSTR lpNewFileName);
    je ne vois pas le probléme pour utiliser cette fonction non?
    ça reçoit la source et la destination et ça renvoit 0/1 .

  5. #5
    Nouveau membre du Club
    Inscrit en
    Août 2006
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 34
    Points : 32
    Points
    32
    Par défaut
    Bon c'est bien cela j'avais mal utilisé MoveFile, je l'avais utilisé en tant que fonction d'un objet CFile.
    Du coup j'ai revu ma copie, la compilation se fait sans problème mais à l'exécution, la fonction MoveFile me met une erreur... pourquoi??? mystère???

    Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
     
    void PSPICE::OnBrowseFile() 
    {
        // Verification qu'une temperature a ete selectionne
        CString s_temp1, filename,newfile;
        int nmaxt = 10000, n_endf, n_limff;
        int num_file_sel = 0;
        LPTSTR qf = s_temp1.GetBuffer(nmaxt);
        POSITION interf; 
     
        //Creation et ouverture de la boite de dialogue de selection d'un fichier
        //autorisation a la selection multiple
        CFile outfile;
        static char BASED_CODE szFilter[] = "Fichiers txt (*.txt)|*.txt|All Files (*.*)|*.*||";
        DWORD dwFlags = OFN_ALLOWMULTISELECT|OFN_FILEMUSTEXIST|OFN_HIDEREADONLY|OFN_PATHMUSTEXIST;
        CFileDialog m_dlg(TRUE, _T("txt"), NULL, dwFlags, szFilter, AfxGetMainWnd());
     
     
        m_dlg.m_ofn.lpstrFile = qf;
        m_dlg.m_ofn.nMaxFile = nmaxt;
        this->UpdateWindow();
     
     
        if(m_dlg.DoModal()==IDOK)
        {
            interf = m_dlg.GetStartPosition();
            do{
     
                    // lecture du chemin du premier fichier
                    string4t = m_dlg.GetNextPathName(interf);
     
                    //recuperation du nom du fichier
                    n_endf = string4t.GetLength();
                    n_limff = string4t.ReverseFind('\\');
                    filename =  string4t.Right(n_endf - n_limff - 1);
                    MessageBox(filename,"Test",MB_OK);
                    m_list_files.AddString(filename);
     
                    //TODO on renomme le fichier qui est envoyé dans le répertoire
                    //outfile.Rename(string4t,pszBuffer);
                    if (CopyFile(string4t,pszBuffer,FALSE)==0)
                    {
                        MessageBox("erreurboooo","Test",MB_OK);
                    }
                    num_file_sel ++ ;
     
     
            }while(interf != NULL) ;
     
        }
     
        m_but_go.EnableWindow(true);
        m_but_view.EnableWindow(true);
     
     
     
    }
    Merci d'utiliser la balise [code pour le code

  6. #6
    Nouveau membre du Club
    Inscrit en
    Août 2006
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 34
    Points : 32
    Points
    32
    Par défaut
    Problème résolu
    Merci

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

Discussions similaires

  1. [VBS] déplacer des fichiers
    Par Corben dans le forum VBScript
    Réponses: 4
    Dernier message: 20/04/2009, 14h25
  2. Problème pour déplacer des fichiers
    Par kurul1 dans le forum C++Builder
    Réponses: 16
    Dernier message: 07/03/2007, 16h25
  3. Déplacer des fichiers
    Par nicofromChina dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 17/10/2006, 06h31
  4. Réponses: 3
    Dernier message: 12/04/2006, 20h44
  5. Comment déplacer des fichiers sous perl ?
    Par Ickou dans le forum Langage
    Réponses: 6
    Dernier message: 10/11/2005, 12h17

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