[C] Comment savoir si un dossier est en cours de copie

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
rinduc
Niveau 1
Niveau 1
Messages : 6
Enregistré le : dim. 16 mai 2010 00:10
Status : Hors ligne

[C] Comment savoir si un dossier est en cours de copie

#1

Message par rinduc »

Bonsoir tout le monde,

Voilà, je suis entrain de réaliser un script qui permet de surveiller l'arrivée de nouveau(x) fichier(s)/dossier(s) sur un lecteur réseau.

Le problème est que quand quelqu'un copie un fichier de grosse taille la commande DirCopy copie qu'une petite partie du dossier alors que j'aimerais tout copier.

Pareille pour le fichier. j'ai vu après quelques recherches sur le forum que avec la commande FileOpen si elle retourne -1 le fichier est en cours de copie mais le problème après j'essaye de faire avec FileClose car il me dit que mon fichier est ouvert dans Autoit et donc impossible de fermer le fichier.

Merci de m'apporter votre aide

A bientôt
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11824
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Comment savoir si un dossier est en cours de copie

#2

Message par Tlem »

Sujet déjà traité. Merci de faire quelques recherches.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
rinduc
Niveau 1
Niveau 1
Messages : 6
Enregistré le : dim. 16 mai 2010 00:10
Status : Hors ligne

Re: [C] Comment savoir si un dossier est en cours de copie

#3

Message par rinduc »

Comme précisé dans le message j'ai déjà effectué plusieurs recherches sur le forum.

j'ai Trouvé pour les fichiers et j'ai expliqué mon problème.

pour les dossiers impossible de mettre la main sur le topic qui est concerné.

Merci de m'éclairer
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11824
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [C] Comment savoir si un dossier est en cours de copie

#4

Message par Tlem »

Le copie d'un dossier se passe en deux étapes.
1 - La création/la copie du dossier.
2 - La copie des fichiers contenus dans le dit dossier.

La partie 1 est trop rapide pour analyser quoi que ce soit. Par contre, vous pouvez vérifier la création du dossier.
Ensuite, c'est comme déjà dit pour les fichiers.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
rinduc
Niveau 1
Niveau 1
Messages : 6
Enregistré le : dim. 16 mai 2010 00:10
Status : Hors ligne

Re: [C] Comment savoir si un dossier est en cours de copie

#5

Message par rinduc »

Oui merci mais ça je l'avais déjà déduit par moi-même mais le problème est que lorsque l'on fait comme ils disent avec le while fileopen() = -1 lorsqu'on essaye de supprimer le fichier en question par la suite il dit que le fichier est utilisé dans autoit alors j'ai essayé avec un fileClose() mais c'est tjs pareille.

Ensuite je ne trouve pas de solution pour faire pareille avec un dossier.
rinduc
Niveau 1
Niveau 1
Messages : 6
Enregistré le : dim. 16 mai 2010 00:10
Status : Hors ligne

Re: [C] Comment savoir si un dossier est en cours de copie

#6

Message par rinduc »

J'attends toujours une réponse pour les dossiers ... impossible a trouver et c'est pas comme avec les fichiers car on ne peut pas faire de fileOpen dessus
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11824
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [C] Comment savoir si un dossier est en cours de copie

#7

Message par Tlem »

:shock:
Que n'avez-vous pas compris dans :
Tlem a écrit :La partie 1 est trop rapide pour analyser quoi que ce soit.
Si un dossier n'existe pas, c'est facile, on teste si il est créé ou pas.
Si il est déjà créé, que voulez-vous tester ? Il n'y à rien qui change, donc c'est mort ...
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
rinduc
Niveau 1
Niveau 1
Messages : 6
Enregistré le : dim. 16 mai 2010 00:10
Status : Hors ligne

Re: [C] Comment savoir si un dossier est en cours de copie

#8

Message par rinduc »

Justement si il y a quelque chose qui change quand il est entrain d'être copié. --> Sa taille avec dirGetSize mais c'est très imprécis et demande beaucoup de temps.

Si quelqu'un a une autre solution que je connais pas je suis toujours prenneur
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11824
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [C] Comment savoir si un dossier est en cours de copie

#9

Message par Tlem »

La taille est liée à son contenu et non au dossier lui-même. :P
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
rinduc
Niveau 1
Niveau 1
Messages : 6
Enregistré le : dim. 16 mai 2010 00:10
Status : Hors ligne

Re: [C] Comment savoir si un dossier est en cours de copie

#10

Message par rinduc »

Ben en tout cas ça marche mais je dois m'y prendre en 2 coups et il faut 10 secondaires pour faire des tests donc ce n'est vraiment pas le top :S
Répondre