Ok, plus vieux que ce que je pensais !
Version imprimable
Ok, plus vieux que ce que je pensais !
Pour finir sur ce sujet,je poste ici le résultat de tout cela, sous la forme de mon projet complet.
Il s'agit d'un utilitaire pouvant parcourir une arborescence quelconque de dossiers sur un disque, que ce soit C:\, un autre disque interne ou un disque amovible (USB ou autre).
La particularité du programme réside dans le fait que les dossiers peuvent avoir des noms contenant des caractères en Unicode, ainsi que les noms des fichiers.
Le programme cherche l'occurrence d'une chaîne de caractères partielle (mais il n'y a pas de jokers). Le critère de recherche peut contenir du texte en Unicode.
On peut exclure un dossier particulier de la recherche.
Pendant la recherche, n texte en bleu affiche les noms des dossiers parcourus, et les noms des fichiers trouvés sont placés dans ine TTntListBox.
Après la recherche, le texte bleu disparaît, et le nombre de dossiers parcourus et le nombre de fichiers inspectés sont affichés.
On peut aors spécifier un dossier de destination (fusion) vers lequel tous les fichiers de la liste seront déplacés, et supprimant éventuellement une version préexistante.
Ce dossier de fusion peut se trouver sur un autre disque ou dans une autre arborescence.
Mais si le dossier de fusion est à l'intérieur de l'aborescence de recherche, alors il convient de l'exclure de la recherche AVANT de lancer la recherche (voir ci-dessus).
Pendant la copie, une barre de progression indique l'avancement du processus.
J'ai conscience que ce code montre encore beaucoup de maladresses, mais il semble bien fonctionner et constitue ma première expérience avec Unicode.Le code est basé sur les composants TntUnicode. J'ai copié la distribution dézippée dans C:\Programmes (x86)\Borland\Delphi6\Lib et j'ai placé le chemin vers le sous-dossier Source de cette distribution dans le chemin de recherche des bibliothèques. Voici ce que ça donne:
Pièce jointe 665900
Voici une capture d'écran:
Pièce jointe 665901
Il y a le projetcomplet en pièce jointe, y compris l'exécutable.