ADD2FILE - AJOUTER DES INFOS AUX FICHIERS

Bacterius Messages postés 3792 Date d'inscription samedi 22 décembre 2007 Statut Membre Dernière intervention 3 juin 2016 - 18 avril 2009 à 23:47
blueperfect Messages postés 234 Date d'inscription mardi 13 novembre 2007 Statut Membre Dernière intervention 21 novembre 2013 - 19 avril 2009 à 16:08
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/49871-add2file-ajouter-des-infos-aux-fichiers

blueperfect Messages postés 234 Date d'inscription mardi 13 novembre 2007 Statut Membre Dernière intervention 21 novembre 2013
19 avril 2009 à 16:08
Médiocre, le TFileStream ? à explorer...

Quand tu passes par les API de bas niveau, il te faut vérifier les locks éventuels...

>> On apprends à tout age ! MsDos, comme CP/M traite les fichiers comme des entrées/sorties :

ainsi :

copy A.TEXT + CON > C.TEXT

se lit comme ajoute les entrées de la console (le clavier) au fichier A.TEXT, et redirige les vers C.TEXT...

Par contre il ne gère pas les recouvrements :

copy A.TEXT + B.TEXT > A.TEXT est incorrect !
Bacterius Messages postés 3792 Date d'inscription samedi 22 décembre 2007 Statut Membre Dernière intervention 3 juin 2016 10
19 avril 2009 à 15:57
Tu veux dire pourquoi je n'ai pas utilisé un TFileStream pour la lecture/écriture (1) ou pourquoi je n'ai pas créé une classe qui enveloppe, justement, un fichier et ses métadonnées (2) ?
(1) : Pour la raison citée au-dessus de ton commentaire. Mais si il s'agit de recoder les TStream ...
(2) : Je n'y ai pas pensé sur le coup

Pour la simulation je savais pas lol.

Cordialement, Bacterius !
blueperfect Messages postés 234 Date d'inscription mardi 13 novembre 2007 Statut Membre Dernière intervention 21 novembre 2013
19 avril 2009 à 15:02
Simulation du /A du DOS !

* Pourquoi des fonctions, et pas un TPersistent (un TFileStream) ?
Bacterius Messages postés 3792 Date d'inscription samedi 22 décembre 2007 Statut Membre Dernière intervention 3 juin 2016 10
19 avril 2009 à 12:54
Ok Francky, je comprends tout à fait ;) (tu vas vite te dégonfler t'inquiète pas lol)
Mais franchement je trouve que chaque fois que j'ai utilisé un TFileStream les performances étaient très très très médiocres alors que chaque fois que je passe par les API de bas niveau ça va beaucoup plus vite. Enfin merci pour le conseil :)
Et merci pour l'info également PCMF3 :)

Cordialement, Bacterius !
PCMF3 Messages postés 1 Date d'inscription lundi 19 juillet 2004 Statut Membre Dernière intervention 19 avril 2009
19 avril 2009 à 11:20
Ce n’est pas nouveau de marquer des fichiers avec des informations. On nome cela des métadonnées. Des normes existent à cet effet, si bien sur le besoin est de permettre un échange avec s’autres applications. Les dernières techniques est celle poussée par Adobe avec la norme XMP.
Encapsuler de l’XMP (cela se fait) cela serait une bonne idée. L’XMP étant une structure XML dont les descriptions sont rassemblées dans des espaces de nom déclarés (donc ouvert. L'encapsulation est réalisable directement ou en ADS (NTFS seulement) ou accompagné d'un "side car" mais dans ce cas ce n'est bien sur plus de l'encasulation à proprement parlé.
Voir pour info le lien
http://www.adobe.com/devnet/xmp/
Francky23012301 Messages postés 400 Date d'inscription samedi 6 août 2005 Statut Membre Dernière intervention 11 février 2016 1
19 avril 2009 à 04:32
Si si moi je l'ai vu ton source précédent ^^.

Ce qui me permet de te faire une remarque : vu la fréquence à laquelle tu postes (Au moins un source par semaine), je suis pas sur que les objectifs soient toujours atteints. Enfin bref, si tu arrivais à controler ton besoin de compétition (Cirec, David, Mauricio), ca serait cool pour tout le monde ;) (Perso je commence à trouver cela gonflant ;)).

Pour en venir à ton source : Cette technique qui consiste à injecter des données à un fichier, méritait elle vraiment un source ? Je suis pas sur. C'est ultra connue, et sur CS on trouve plein de projets utilisant une telle technique. Ton source n'apporte sur ce coup, vraiment rien de novateur.

Par contre zappe tes ReadFile et WriteFile, et utilise les streams dont les procédures sont elles optimisées ;).

Ps : Ne prend pas mal mon intervention (Si tu veux en discuter en MP, pas de probleme ;))
Bacterius Messages postés 3792 Date d'inscription samedi 22 décembre 2007 Statut Membre Dernière intervention 3 juin 2016 10
18 avril 2009 à 23:47
Ah oui codé sous Delphi 6 Personal Edition.

Cordialement, Bacterius !
Rejoignez-nous