LIRE ET ÉCRIRE LES METADONNÉES EXIF, IPTC, PNG, GIF (FORMAT TIFF, JPEG, PNG, GIF

Signaler
Messages postés
172
Date d'inscription
mercredi 29 janvier 2003
Statut
Membre
Dernière intervention
24 février 2008
-
Messages postés
1
Date d'inscription
samedi 12 novembre 2011
Statut
Membre
Dernière intervention
13 novembre 2011
-
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/38909-lire-et-ecrire-les-metadonnees-exif-iptc-png-gif-format-tiff-jpeg-png-gif-bmp

Messages postés
1
Date d'inscription
samedi 12 novembre 2011
Statut
Membre
Dernière intervention
13 novembre 2011

Bonjour.
Je me permets de prendre contact avec vous, bien que je ne sois pas développeur professionnel : je ne me sers que de VBA.
J’aurais voulu me constituer sous Office Access 2007 (Windows XP) une base de données pour mes images, mais je souhaite à la fois lire les informations IPTC et les écrire pour qu’elles puissent être conservées indépendamment de la base.
(Je me sers pour le moment de XnView, mais l’interface ne me convient pas.)
D’après ce que je comprends, vos formulaires (frmMain.frm par exemple) sont prévus pour fonctionner indépendamment et non depuis une application Office.
La question est donc : y a-t-il un moyen d’utiliser votre code depuis VBA (lire et écrire les IPTC) ?
Merci d’avance pour votre réponse.
Messages postés
492
Date d'inscription
jeudi 5 avril 2007
Statut
Membre
Dernière intervention
2 juillet 2012
4
Merci de ta réponse, je dois faire une erreur quelque part ! je testerais à nouveau.
A+
Messages postés
2676
Date d'inscription
vendredi 28 juin 2002
Statut
Membre
Dernière intervention
13 janvier 2016
21
salut Lermite222,

Dsl de la réponse tardive.

si c'est big endian, B9C8 doit donner &hB9C8 et 0003 doit donner &h0003.
Si c'est little endian, B9C8 doit donner &hC8B9 et 0003 doit donner &h0300.

Je ne vois rien d'anormal dans la gestion de l'endianess dans le code de CopyMemory.

ShareVB
Messages postés
492
Date d'inscription
jeudi 5 avril 2007
Statut
Membre
Dernière intervention
2 juillet 2012
4
Bonjour,
Tout d'abord, bravo pour le travail de documentation que cela a dù te prendre.
Je ne me sert pas de ton code qui ne convient pas à ce que je veux faire et je tombe sur un "os", tu emploi l'API CopyMemory pour transférer les données, j'emploi une autre méthode mais là n'est pas mon propos.
Quand tu est avec le type motorola tu inverse les 2 ou 4 bytes, c'est OK quand les derniers bytes ne sont pas à zéro mais si oui...
Ex 1 : &hB9 - &hC8 .. en sortie ont a donc &hC8B9, c'est OK j'ai la même chose
Ex 2 : &h00 - &h03 .. En sortie il me semble que celà devrait faire &h300 or en sortie de ta fonction CopyMemory j'ai &h3 ?
Je dois dire que je ne comprend pas ! j' contrôler le processus dans ta fonction et il me semble être conforme !
Si tu suis encore cette source aurais-tu une explication.
Merci.
A+
Afficher les 11 commentaires