Page 1 sur 1

Toujours sur mes explo de directory

Publié : ven. 12/mai/2006 14:29
par pampers
Bonjour à tous, aprés avoir bien analyser et tester la procedure de recherche de dossier pour lesquels vous m'avez bien dépanné. Je reste coincé sur la recherche de fichier cette fois (surtout avec les chgt lié au PB4)
Mon problème est qu'avant que je lance une appli, je dois vérifier la présence de fichiers d'extension .net et .LCK dans des repertoires et sous répertoires du DD. j'ai donc du mal à faire une recherche dans les dossiers (qui ont un début de nom spécifique) et leurs sous dossiers qui eux peuvent être nommés de plusieurs façon.
Ma question est comment faire pour explorer des dossiers qui commencent par ISAXXXXX qui peuvent contenir des sous dossiers et qui contiennent 1 ou plusieurs fichiers d'extension *.NET *.LCK. lesquels doivent être effacés par le programme.
Merci de votre aide.
C'est dur, mais c'est génia !!!!

Au passage, est il facile de faire réduire l'appli dans la barre à coté de l'heure pendant l'execution d'un autre programme. (laisser cela en option dans mon appli de lancement).

Encore merci

Publié : ven. 12/mai/2006 14:47
par Dr. Dri
voila un exemple (t'aurais pu garder le même topic au lieu d'en créer un nouveau)

Code : Tout sélectionner

;nom du fichier obtenu lors de la recherche
nom_du_fichier.s = "c:\dossier truc\ISAXXXXX\bidule.net"
; nom_du_fichier.s = "c:\dossier truc\ISAXXXXX\bidule.lck"
; nom_du_fichier.s = "c:\dossier truc\ISAXXXXX\bidule.txt"

;extensions à tester
extensions.s = "net|lck"

;test
If FindString(extensions, GetExtensionPart(LCase(nom_du_fichier)), 1)
  Debug "ok"
Else
  Debug "pas ok"
EndIf
c'est une méthode pour trouver en un test si l'extension correspond.

Dri

Publié : ven. 12/mai/2006 15:41
par pampers
Merci, je vais essayer avec cela. cependant j'etais egalement bloqué avec la descente dans les sous répertoires. Globalement, quand je pars de C:\ comment etre sur de passer tous les dossiers et les sous dossiers et les sous sous dossiers ... en revue. sachant que dans le cas présent je sais que les dossiers sont en principe dans la racine et commence par ISAXXXX. Dans d'autre cas je n'en sais rien. La question doit te sembler bête mais je pige pas bien la recherche avec examinedirectory et nextdirectoryentry...

Directory$ = "C:\" ; Énumère le contenu du répertoire C (Les sous-répertoires ne sont pas examinés)
If ExamineDirectory(0, Directory$, "*.*")
While NextDirectoryEntry(0)
If DirectoryEntryType(0) = #PB_DirectoryEntry_File
Type$ = " [Fichier] "
Else
Type$ = " [Sous-répertoire] "
EndIf

Debug DirectoryEntryName(0) + Type$ + "- Taille en octet : " + Str(DirectoryEntrySize(0))
Wend
FinishDirectory(0)
EndIf


Dans cet exemple (aide pb4) comment examiner les sous repertoires et les sous sous.....

Voila. Merci pour le reste... (puis je augmenter dans (extensions.s = "net|lck|tmp") D'avance merci.

)