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

WinDev Discussion :

Copier un fichier en cours d'utilisation


Sujet :

WinDev

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2008
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 256
    Points : 85
    Points
    85
    Par défaut Copier un fichier en cours d'utilisation
    Bonjour à tous (je relance ce sujet qui date de 2015 et dont je n'ai pas eu de réponse donc peut-être que cette fois-ci je trouverai de l'aide) !

    Je suis entrain de mettre au point un logiciel me permettant de faire des copies de fichiers (un peu comme une sauvegarde) cependant j'ai un soucis, si un fichier est en cours d'utilisation, celui-ci n'est pas copié par conséquent cela un impact dans la gestion des mise à jour de mes copies de fichiers.

    Auriez-vous une idée sur comment contourner ce problème ?

    Je vous en remercie d'avance à tous.

  2. #2
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2003
    Messages
    942
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2003
    Messages : 942
    Points : 1 933
    Points
    1 933
    Par défaut
    Bonjour,

    Regarde la partie shadow copy sous Windows. par forcément simple mais ça correspond à ton besoin.
    Philippe,


    N'hésitez à lever le pouce si mon aide vous a été utile.

  3. #3
    Membre émérite
    Femme Profil pro
    .
    Inscrit en
    Janvier 2012
    Messages
    998
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : .
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 998
    Points : 2 524
    Points
    2 524
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    RetVal est un entier
    lpsource,lpdest sont des chaines
    MultiTache(-1)
    lpsource=MonFichierSource      //(Répertoire + Nom)
    lpdest=MonFichierDestination   //(Répertoire + Nom)
    RetVal=AppelDLL32("kernel32","CopyFileA" , &lpsource, &lpdest, 0)
    si RetVal<>1 erreur("Erreur lors de la copie")
    info("Terminé !")
    Code sous WD5.5, donc à adapter chez vous

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Août 2008
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 256
    Points : 85
    Points
    85
    Par défaut
    Merci à tous les 2 pour vos réponses.
    @philouZ : J'ai effectivement vu des sujets sur la partie shadow copy mais je n'ai pas trouvé de librairie ou autres pouvant être téléchargé. Ce n'est pas installé par défaut sous Windows donc il faut que je trouve la source pour peut être pouvoir l'exploiter.
    @serendib : C'est très gentil pour le code que tu as noté ! Problème, c'est que cette dll ne permet pas de copier un fichier qui est en cours d'utilisation qui de plus est, n'est plus existant sous les nouveaux OS de Windows (enfin du moins je n'ai trouvé aucune trace de cette dll ... peut-être à t'elle un nouveau ?).

    Je pense vraiement qu'il faut que je l'oriente vers la partie VSS (Volume Snapshot Service) ou Shadow Copy qui permet de traiter ce problème, cependant, je trouve rien sur la manière de m'en servir au niveau programmation.

    Si vous avez des pistes ou autres je suis preneur.

    En vous remerciant d'avance.

    Bonne journée et joyeuses fêtes de fin d'année (si je ne vous ai pas d'ici là).

  5. #5
    Membre émérite
    Femme Profil pro
    .
    Inscrit en
    Janvier 2012
    Messages
    998
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : .
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 998
    Points : 2 524
    Points
    2 524
    Par défaut
    Citation Envoyé par Jb_One73 Voir le message
    Merci à tous les 2 pour vos réponses.
    @serendib : C'est très gentil pour le code que tu as noté ! Problème, c'est que cette dll ne permet pas de copier un fichier qui est en cours d'utilisation qui de plus est, n'est plus existant sous les nouveaux OS de Windows (enfin du moins je n'ai trouvé aucune trace de cette dll ... peut-être à t'elle un nouveau ?).
    Je m'en sert pour faire des sauvegardes à chaud et ça marche très bien.
    Pour ce qui est des nouveaux OS, c'est bizarre, ça marche chez mes Clients en Serveur 2003, 2008, 2012.
    Idem sous Windows 7.

    https://msdn.microsoft.com/fr-fr/lib...(v=vs.85).aspx

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Août 2008
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 256
    Points : 85
    Points
    85
    Par défaut
    Merci serendib pour ta réponse ! Je vais réessayer le code que tu as proposé mais je l'avais utilisé il y a un petit moment et je sais que cela ne fonctionnait pas (ex : copie du fichier pst de Outlook) et que celle-ci n'était pas présente par défaut dans l'OS. J'ai peut être bu ce jour là ??
    Enfin bref ! Je test ce que tu as noté et je te fais un retour.

    Merci d'avance.

  7. #7
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2003
    Messages
    942
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2003
    Messages : 942
    Points : 1 933
    Points
    1 933
    Par défaut
    Bonjour,

    Voilà ce qu'on trouve pour l'utilisation de vss en .net https://github.com/alphaleonis/AlphaVSS
    Philippe,


    N'hésitez à lever le pouce si mon aide vous a été utile.

Discussions similaires

  1. [WD20] Copier un fichier en cours d'utilisation
    Par Jb_One73 dans le forum WinDev
    Réponses: 0
    Dernier message: 14/09/2015, 16h47
  2. [D7] Lire un fichier en cours d'utilisation
    Par bibi26 dans le forum Delphi
    Réponses: 3
    Dernier message: 05/07/2007, 10h00
  3. [DOM] Fichier en cours d'utilisation - Suppression impossible
    Par schniouf dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 15/12/2006, 13h58
  4. Fichier en cours d'utilisation
    Par kendras dans le forum C
    Réponses: 9
    Dernier message: 29/11/2006, 11h45
  5. [VB.NET] Comment acceder au fichier en cours d'utilisation ?
    Par Aspic dans le forum Windows Forms
    Réponses: 1
    Dernier message: 18/02/2006, 16h40

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