Bonjour,
Dans le programme sur lequel je suis en train de bosser, à un moment, je dois vérifier si des fichiers sont présents sur le DD avant de continuer.
A priori, rien de compliqué :
if ((FindFirst(m_Chemin+'*.jpg', $3F,s)=0) then ...
Mon problème est qu'à froid, cette petite recherche est très lente (~1sec), ce qui est handicapant pour les performances globales (des appels similaires sont réalisés à plusieurs reprises). Les dossiers en question peuvent contenir plusieurs milliers de fichiers, c'est sûrement lié à ça. De plus, ce n'est lent que pour la première utilisation du logiciel, s'il est relancé une seconde fois sans reboot, l'action est quasi-immédiate. J'ai également testé de visiter les dossiers en question avant le lancement du programme, et là aussi ça a été très rapide. Windows (XP) est donc montré du doigt d'après moi.
Je souhaiterais donc savoir si vous connaissiez des solutions alternatives qui puissent me faire gagner en vitesse. Je peux à la limite lancer un script pour "visiter" ces répertoires en background en prévision des FindFirst.
Merci !
Partager