Bueno, para listar todos los archivos, te recomiendo las funciones FindFirst, FindNext, FindClose. Busca en la ayuda de Delphi (hasta trae ejemplos de cómo usarlas).
Bueno, he hecho un par de cosas parecidas por ahí, si eso inténtalo y si no te sale, pues miras este post otra vez a ver si he publicado el código
Salu2.