Bibliothèque de fichiers

Bibliothèque de fichiers - Divers - Programmation

Marsh Posté le 09-01-2010 à 15:57:55    

Bonjour à tous,
Dans le cadre d'un projet je dois mettre en place un logiciel qui devra parcourir l'ensemble des fichiers d'un dossier (incluant les sous-dossiers) pour inscrire tout les noms dans une liste. Ensuite il faut que j'affiche cette liste un peu comme une bibliothèque i-tunes ou media player. L'opérateur pourra selectionner un tri par date, par auteur, etc ...
 
Ma question est la suivante: quel langage utiliser ?
 
Le html pourrait me servir pour l'affichage ( simple avec un tableau et 2 boutons). Mais je penses que le html manque d'interactivité.
Le Php sera compliqué à mettre en place car c'est du local. (donc pas de server).
Le Vb, mais je ne sais pas si un compilateur sera à disposition dans ma salle de TD.
Je ne connais pas le C (ok promis je m'y met !), ni aucun autre langage de programmation.
 
Je souhaite faire un programme fiable à 100%, pas forcement rapide, fonctionnant sur la plupart des machines ( la programmation peut se faire sous Linux).  
 
J'attends vos réponses, sachant que je suis prêt à tout envisager.
 
Merci d'avance!
Christopher 18CH209

Reply

Marsh Posté le 09-01-2010 à 15:57:55   

Reply

Marsh Posté le 11-01-2010 à 10:03:14    

Ma réponse : le VBS (VB script).
 
- Il est disponible sur tous les ordinateurs Windows 7, XP, NT, etc, jusque même Windows 95 (il y a quelques variantes dans les versions pour ce qui est demandé, cela passe même avec les anciennes versions).
- Il est capable d'explorer l'arborescence des fichiers, ce qui n'est pas possible avec d'autres langages qui sont exécutées depuis une page HTML (javascript, etc), car ils sont restreints pour des raisons de sécurité (sauf en utilisant des astuces comme certains activeX, mais avec l'approbation de l'utilsateur, etc.).
- Il est plus simple que le C et d'autres langages qui peuvent faire ça aussi.
 
Mon second choix serait le langage C, car il est possible que ce qui est demandé ne soit pas facile à faire en VBS. Le projet n'est pas décrit en détail, mais je crains que, par exemple, il faille lire les tags de fichiers multimédias.
 
Mon troisième choix serait AutoIt (voir http://www.autoitscript.com/autoit [...] tions.htm), mais il faut l'installer.

Reply

Marsh Posté le 11-01-2010 à 11:37:36    

Fiable à 100%, y a qu'Ada.

Reply

Marsh Posté le 11-01-2010 à 13:35:09    

Si tu n'as pas besoin de quelque chose de compilé, perl conviendrait assez bien pour toute la fonctionnalité de parcours, sélection, et tri (sauf l'affichage si tu veux du fenêtré, auquel cas il faudra faire un peu de perl-tk)
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 11-01-2010 à 14:04:06    

+1 pour AutoIt
 
Mais y'a pas de raison d'éliminer le PHP, même pour une utilisation en local :
- il peut fonctionner sans serveur web en ligne de commande (genre : php.exe c:cheminScript.php
- avec un serveur, même en local, y'a WampServer ou EasyPHP
- Il est possible de générer un .exe à partir d'une appli web codée en php. En gros, ça met dans un .exe ton ou tes scripts + l'interpréteur php et sa DLL.
 
Par ailleurs, faire ce genre d'appli en php présente le gros intérêt que c'est portable sur un bon nb d'OS (Windows, Linux...).


Message édité par rufo le 11-01-2010 à 14:04:57

---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 12-01-2010 à 19:37:25    

Merci pour vos réponses !
Comme ce projet devra être utilisé dans une entreprise, il faut que le programme n'engage pas la société à des peines juridiques.
 
Le problème avec le serveur Php est qu'il doit être démarré...  
 
Je suis encore en train d'étudier le projet. Un fichier excel peut aussi être mis à jour par le biais de macros. (peut être combiner une base de données et un fichier excel).
Encore merci, je vous tiens au courrant !

Reply

Marsh Posté le 13-01-2010 à 00:02:17    

Non non, PHP n'a pas besoin d'être installé en tant que serveur.
PHP fonctionne aussi comme n'importe quel interpréteur de commandes, avec la syntaxe qu'a donné rufo.
 
On peut parfaitement imaginer un script PHP qui génère des pages HTML (perso, je trouve qu'un flux XML combiné avec une feuille de style est plus propre), qu'on peut ensuite ouvrir avec un navigateur web.

Reply

Marsh Posté le 13-01-2010 à 12:03:30    

Je vois un peu plus clair.
 
 "il peut fonctionner sans serveur web en ligne de commande (genre : php.exe c:cheminScript.php)"
 
Rufo ta methode m'interesse beaucoup mais je ne trouve aucune infos sur le net. As-tu des exemples ?  
D'autre part je ne sais pas quelles syntaxes utiliser pour écrire mon script en local. Rien que la racine me pose problème. Dans toutes les adresses suis-je obligé de mettre l'adresse exacte ? ("C:/Users/Christopher/Documents/.../recherche.php" ?)
 
Ps: Pour la solution XML, le fichier xml contiendrait la liste de fichier. C'est elle que l'on mettrait à jour par un exe, que l'on pourrait appelé à partir du browser.  
 
Merci d'avance !

Reply

Marsh Posté le 14-01-2010 à 09:48:54    

C'est la syntaxe de ce forum qu'a viré mes anti-slasches. Donc :

Code :
  1. php.exe c:/chemin/Script.php


 
Et dans ton script php, ben tu fais du php :/ La seule limitation c'est que tu peux pas faire référence à certaines variables d'environnement genre $_SERVER. Faut pas chercher midi à 14h...


Message édité par rufo le 14-01-2010 à 15:23:36

---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 14-01-2010 à 15:12:27    

Utilise la balise [ fixed ] ou [ code ] ça ira vachement mieux pour montrer des lignes de commande ;)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed