OVH Cloud OVH Cloud

[WD8] Être alerté lors de l'ajou d'un fichier dans un dossier?

8 réponses
Avatar
PopolDal
Existe-t-il un moyen qu'un programme windev soit alerté à
chaque fois qu'il y a un nouveau fichier d'ajouter dans un répertoire
donné?

Présentement je fonctionne avec un timersys() et à chaque 30
secondes je fais un FRep() du répertoire en question pour vérifier la
présence de nouveaux fichiers.

Si quelqu'un à une méthode plus efficace j'aimerais bien ça.

8 réponses

Avatar
William
Bonsoir
je n'ai pas le 8.0 mais je pense qu'un flistefichier devrait te retourner un
nbr de fichier.
Si ce dernier est stocké il sufiit de comparer

William

--
JoindreWilliam at hotmail.com
C'est mon adresse mail et chat :-)


"PopolDal" a écrit dans le message de
news:
Existe-t-il un moyen qu'un programme windev soit alerté à
chaque fois qu'il y a un nouveau fichier d'ajouter dans un répertoire
donné?

Présentement je fonctionne avec un timersys() et à chaque 30
secondes je fais un FRep() du répertoire en question pour vérifier la
présence de nouveaux fichiers.

Si quelqu'un à une méthode plus efficace j'aimerais bien ça.


Avatar
PopolDal
Effectivement FListeFichier() fait aussi bien l'affaire sinon
mieux mais ce que je n'aime pas de mon code c'est que le traitement
s'exécute toute les 30 secondes.

Ce que j'aurais aimé c'est que ma fonction soit appelée
automatiquement lorsqu'il y a un ajout de fichier dans le répertoire.
Présentement je suis en train de vérifier si l'ajou d'un fichier
génère un evenement Windows que je pourrais trapper par exemple de
cette façon EVENEMENT("MaFonction","C:MonRep",EvenementAjouFic)

Merci qu'en même pour le conseil

On Wed, 2 Jun 2004 20:46:44 +0200, "William" <Désolé@1.com> wrote:

Bonsoir
je n'ai pas le 8.0 mais je pense qu'un flistefichier devrait te retourner un
nbr de fichier.
Si ce dernier est stocké il sufiit de comparer

William


Avatar
elecoest
n'y at-il pas une date de dernière modification du repertoire (comme sous
unix) ?

"PopolDal" a écrit dans le message de news:

Effectivement FListeFichier() fait aussi bien l'affaire sinon
mieux mais ce que je n'aime pas de mon code c'est que le traitement
s'exécute toute les 30 secondes.

Ce que j'aurais aimé c'est que ma fonction soit appelée
automatiquement lorsqu'il y a un ajout de fichier dans le répertoire.
Présentement je suis en train de vérifier si l'ajou d'un fichier
génère un evenement Windows que je pourrais trapper par exemple de
cette façon EVENEMENT("MaFonction","C:MonRep",EvenementAjouFic)

Merci qu'en même pour le conseil

On Wed, 2 Jun 2004 20:46:44 +0200, "William" <Désolé@1.com> wrote:

>Bonsoir
>je n'ai pas le 8.0 mais je pense qu'un flistefichier devrait te retourner


un
>nbr de fichier.
>Si ce dernier est stocké il sufiit de comparer
>
>William



Avatar
Pierre-Yves TAVERNIER
Il y a l'api SHChangeNotify

Il doit exister mieux mais il faut alors chercher dans MSDN (Je n'ai pas les
exemples sous la main).

PYT




"PopolDal" a écrit dans le message de
news:
Existe-t-il un moyen qu'un programme windev soit alerté à
chaque fois qu'il y a un nouveau fichier d'ajouter dans un répertoire
donné?

Présentement je fonctionne avec un timersys() et à chaque 30
secondes je fais un FRep() du répertoire en question pour vérifier la
présence de nouveaux fichiers.

Si quelqu'un à une méthode plus efficace j'aimerais bien ça.


Avatar
Matthieu Sadouni
une piste sur msdn :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcon/html/vbconintroductiontofilesystemcomponents.asp

par contre cela ne fonctionne que sur les plateformes NT/2000/XP, pas 9x

--
Matthieu Sadouni
Avatar
PopolDal
Merci c'est exactement ce que j'ai besoin. As-tu réussi à
l'implanter en WinDev? Pour l'instant je me suis fait un petit
programme en VB car je dois me déclarer un FileSystemWatcher qui est
déclaré dans System.IO. En VB ça donne de quoi dans ce genre

Imports System.IO
Dim Watcher As FileSystemWatcher

Mais en WinDev quelqu'un sait-il comment faire pour me
déclarer un FileSystemWatcher comme je le fais en VB dans l'exemple
ci-dessus?

Merci à l'avance et à Matthieu pour m'avoir indiqué où
chercher

On Thu, 03 Jun 2004 10:53:17 +0200, Matthieu Sadouni
wrote:

une piste sur msdn :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcon/html/vbconintroductiontofilesystemcomponents.asp

par contre cela ne fonctionne que sur les plateformes NT/2000/XP, pas 9x


Avatar
PopolDal
Merci pour la piste c'est exactement ce que je veux. Par
contre je ne suis pas capable le faire en WinDev. Je me suis fais un
petit programme en VB en attendant. Je dois me créer un
FileSystemWatcher qui est connu dans System.IO alors en VB c'est
simple suffit de faire de quoi dans l'genre de:

Imports System
Imports System.IO
Dim watcher As FileSystemWatcher

Mais comment faire pour me déclarer un FileSystemWatcher en
WinDev?

Merci à Matthieu pour son aide et si quelqu'un sait comment
faire pour WinDev alors je suis prenneur.

On Thu, 03 Jun 2004 10:53:17 +0200, Matthieu Sadouni
wrote:

une piste sur msdn :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcon/html/vbconintroductiontofilesystemcomponents.asp

par contre cela ne fonctionne que sur les plateformes NT/2000/XP, pas 9x


Avatar
PopolDal
Merci pour la piste c'est exactement ce que je veux. Par contre je ne
suis pas capable le faire en WinDev. Je me suis fais un petit
programme en VB en attendant. Je dois me créer un FileSystemWatcher
qui est connu dans System.IO alors en VB c'est simple suffit de faire
de quoi dans l'genre de:

Imports System
Imports System.IO
Dim watcher As FileSystemWatcher

Mais comment faire pour me déclarer un FileSystemWatcher en
WinDev?

Merci à Matthieu pour son aide et si quelqu'un sait comment
faire pour WinDev alors je suis prenneur.

-----------------------------------------------------------------------
Message d'origine
-----------------------------------------------------------------------
une piste sur msdn :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcon/html/vbconintroductiontofilesystemcomponents.asp

par contre cela ne fonctionne que sur les plateformes NT/2000/XP, pas
9x

--
Matthieu Sadouni