PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE


  • Cas particuliers
  • Procédure WLangage
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget iOSApple WatchCatalystUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Détecte les modifications effectuées sur le contenu d'un répertoire. Seules les modifications effectuées sur les fichiers présents dans le répertoire sont détectées. En cas de modification, une procédure spécifique est exécutée dans un thread.
Exemple
// Nom du répertoire à surveiller
sNomRepertoire est une chaîne = "C:\Temp\MonRep"
// La procédure TraiteModificationRep sera appelée
// lorsqu'un fichier ou un répertoire contenu dans le répertoire "C:\Temp\MonRep" sera modifié.  
SI fSurveilleRépertoire(sNomRepertoire, TraiteModificationRep, fsCréationFichier + ...
fsModificationFichier + fsSuppressionFichier + fsRenommage) ALORS
// On informe l'utilisateur de la mise sous surveillance du répertoire
Info("La mise sous surveillance du répertoire " + sNomRepertoire + " a réussi.")
SINON
// On informe l'utilisateur de l’échec de la mise sous surveillance du répertoire
Info("La mise sous surveillance du répertoire " + sNomRepertoire + " a échoué.")
FIN
// Code de la procédure
PROCEDURE TraiteModificationRep(sNomRepertoire, sNomFichier, nAction, sAncienNomFichier)
ExécuteThreadPrincipal(AjoutTable, sNomRepertoire, sNomFichier, nAction, sAncienNomFichier)
// Procédure qui agit sur le thread principal
PROCÉDURE AjoutTable(sNomRepertoire, sNomFichier, nAction, sAncienNomFichier)
 
sDesignationAction est une chaîne
// La désignation de l'action subie dépend de nAction
SELON nAction
CAS fsCréationFichier : sDesignationAction = "Création de fichier"
CAS fsSuppressionFichier : sDesignationAction = "Suppression de fichier"
CAS fsModificationFichier : sDesignationAction = "Modification de fichier"
CAS fsRenommage : sDesignationAction = "Renommage de fichier"
FIN
// Ajout d'une ligne contenant les informations de la modification
// dans la table TABLE_MODIFICATIONS
TableAjouteLigne(TABLE_MODIFICATIONS, sNomRepertoire, sNomFichier, ...
sDesignationAction, sAncienNomFichier)
Syntaxe
<Résultat> = fSurveilleRépertoire(<Nom du répertoire> , <Nom de la procédure> [, <Modifications à notifier> [, <Sous-répertoire>]])
<Résultat> : Booléen
  • Vrai si la surveillance du répertoire est activée,
  • Faux dans le cas contraire. Pour plus de détails sur l'erreur, utilisez la fonction ErreurInfo.
<Nom du répertoire> : Chaîne de caractères (avec guillemets)
Nom complet du répertoire à surveiller.
<Nom de la procédure> : Chaîne de caractères (avec ou sans guillemets)
Nom de la procédure WLangage (également nommée "callback") appelée lors d'un changement dans le répertoire spécifié.
Cette procédure est de la forme :
PROCEDURE <Nom de la procédure>(<Nom du répertoire observé>
[, <Nom de l'élément modifié>
[, <Action> [, <Ancien nom>])
où :
  • <Nom du répertoire observé> : chaîne de caractères correspondant au nom complet du répertoire observé.
  • <Nom de l'élément modifié> : chaîne de caractères indiquant le nom du fichier ou du répertoire modifié.
  • <Action> : Constante de type Entier pouvant prendre les valeurs suivantes :
    fsCréationFichierCréation du fichier ou du répertoire <Nom de l'élément modifié> dans le répertoire <Répertoire>.
    fsModificationFichierModification du fichier ou du répertoire <Nom de l'élément modifié> dans le répertoire <Répertoire>.
    fsRenommageLe fichier ou le répertoire <Nom de l'élément modifié> a été renommé dans le répertoire <Répertoire>.
    fsSuppressionFichierSuppression du fichier ou du répertoire <Nom de l'élément modifié> dans le répertoire <Répertoire>.
  • <Ancien nom> : Ancien nom du fichier ou du répertoire modifié si l'action effectuée est un renommage.
Versions 22 et supérieures
Remarque : Cette procédure peut être une procédure interne.
Nouveauté 22
Remarque : Cette procédure peut être une procédure interne.
Remarque : Cette procédure peut être une procédure interne.
<Modifications à notifier> : Constante ou combinaison de constantes optionnelle de type Entier
Modifications du contenu du répertoire à surveiller et pour lesquelles la procédure doit être exécutée :
fsCréationFichierCréation d'un fichier ou d'un répertoire.
fsModificationFichierModification d'un fichier ou d'un répertoire.
fsRenommageRenommage d'un fichier ou d'un répertoire.
fsSuppressionFichierSuppression d'un fichier ou d'un répertoire.
fsToutSurveillance de toutes les actions possibles. Correspond à fsCréationFichier + fsModificationFichier + fsRenommage + fsSuppressionFichier.
<Sous-répertoire> : Booléen
  • Vrai (valeur par défaut) pour traiter les sous-répertoires.
  • Faux dans le cas contraire.
Remarques

Cas particuliers

  • La fonction fSurveilleRépertoire surveille uniquement le contenu du répertoire. Les changements de nom ou d'emplacement du répertoire ne sont pas pris en compte.
  • Pour arrêter la surveillance du répertoire, utilisez les fonctions fSurveilleStop et fSurveilleStopTout.
  • Pour surveiller les modifications effectuées sur un fichier, utilisez la fonction fSurveilleFichier.
  • Limitation : Seuls 5 répertoires peuvent être surveillés simultanément.

Procédure WLangage

La procédure WLangage est exécutée dans un thread WLangage.
Attention : Il n'est pas possible d'exécuter dans les threads les traitements suivants :
Pour plus de détails sur la gestion des threads, consultez Gestion des threads.
Composante : wd250std.dll
Version minimum requise
  • Version 18
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire