Problème Exif ; cohabitation fonction Dir et gestion de fichier texte
1 réponse
Laurent
Bonjour !
Tout d'abord, joyeux Noël à toutes et à tous !!! ;-)
Voici mon problème ;
Je gère le parcours de tous les fichiers contenus dans un répertoire à
l'aide des fonctions Dir(Chemin) puis Dir (en boucle). Tout allait bien !
J'ai intégré une petite gestion de fichier texte juste après chaque Dir,
mais dès le 1er passage dans la boucle, la fonction Dir me renvoie une
chaine vide, car étant à la fin du parcours des fichiers dans le répertoire
(alors qu'il devrait y avoir plusieurs fiuchiers à prendre en compte par
Dir).
Tout fonctionne normalement et proprement (avec Freefile ...)
Aie, aie, aie !
En fait, je veux extraire une info Exif d'une photo d'appareil photo
numérique. Je charge donc le nom du fichier photo courant , je crée un
fichier "bat" que j''exécute ensuite (et qui lance un petit soft qui
s'appelle ExifList), qui crée un fichier texte, que je lis ensuite pour
reprendre l'info "date de cliché".
Il y a peut être plus direct pour lire facilement un exif sous VBA ?
Quelqu'un aurait une suggestion ? Merci d'avance !
L@urent
Ret = FreeFile
Open "C:\Aviation\Data\exif.bat" For Append As #Ret
Print #Ret, Commande
Close #Ret
Ret = Shell("C:\Aviation\Data\exif.bat", 0)
Do Until Len(Dir$("c:\aviation\data\exif.txt")) <> 0
Loop
For Ret = 1 To 100000
For Ret2 = 1 To 2000
Next
Next
'Lire le contenu du fichier résultat
Ret = FreeFile
Open "C:\Aviation\Data\exif.txt" For Input As #Ret
Input #Ret, Chaine
Close #Ret
If Len(Chaine) = 19 Then
Dat = Mid$(Chaine, 9, 2) & "/" & Mid$(Chaine, 6, 2) & "/" &
Mid$(Chaine, 1, 4)
Me("Date événement") = Dat
If Len(Me!TCorrec) = 0 Or IsNull(Me!TCorrec) Then
Me!TCorrec = "0"
End If
Tim = Str(Val(Mid$(Chaine, 12, 2)) + Val(Me!TCorrec)) & Mid$(Chaine,
14, 9)
Me!THeure = Tim
End If
Kill "C:\Aviation\Data\exif.bat"
Kill "C:\Aviation\Data\exif.txt"
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Eric
Bonjour Laurent,
Je ne sais pas si ça peut t'être utile mais j'avais récupéré un module de classe permettant de lire toutes les infos Exif. Je ne sais plus qui en est l'auteur, qu'il m'en pardonne d'avance !
Je te poste ça sur ce lien : http://cjoint.com/?mzm56rIpTh Il s'agit d'une bd avec un formulaire et le module de classe ExifReader Au lancement du formulaire tu devras donner le chemin complet de l'image. La date sera affichée dans une msgbox. A adapter à tes besoins.
Joyeux Noël à toi et à tous les passionnés d'Access ;-)
Bonjour !
Tout d'abord, joyeux Noël à toutes et à tous !!! ;-)
Voici mon problème ; Je gère le parcours de tous les fichiers contenus dans un répertoire à l'aide des fonctions Dir(Chemin) puis Dir (en boucle). Tout allait bien ! J'ai intégré une petite gestion de fichier texte juste après chaque Dir, mais dès le 1er passage dans la boucle, la fonction Dir me renvoie une chaine vide, car étant à la fin du parcours des fichiers dans le répertoire (alors qu'il devrait y avoir plusieurs fiuchiers à prendre en compte par Dir). Tout fonctionne normalement et proprement (avec Freefile ...)
Aie, aie, aie !
En fait, je veux extraire une info Exif d'une photo d'appareil photo numérique. Je charge donc le nom du fichier photo courant , je crée un fichier "bat" que j''exécute ensuite (et qui lance un petit soft qui s'appelle ExifList), qui crée un fichier texte, que je lis ensuite pour reprendre l'info "date de cliché".
Il y a peut être plus direct pour lire facilement un exif sous VBA ?
Quelqu'un aurait une suggestion ? Merci d'avance !
Ret = FreeFile Open "C:AviationDataexif.bat" For Append As #Ret Print #Ret, Commande Close #Ret Ret = Shell("C:AviationDataexif.bat", 0)
Do Until Len(Dir$("c:aviationdataexif.txt")) <> 0 Loop For Ret = 1 To 100000 For Ret2 = 1 To 2000 Next Next
'Lire le contenu du fichier résultat Ret = FreeFile Open "C:AviationDataexif.txt" For Input As #Ret Input #Ret, Chaine Close #Ret If Len(Chaine) = 19 Then Dat = Mid$(Chaine, 9, 2) & "/" & Mid$(Chaine, 6, 2) & "/" & Mid$(Chaine, 1, 4) Me("Date événement") = Dat If Len(Me!TCorrec) = 0 Or IsNull(Me!TCorrec) Then Me!TCorrec = "0" End If Tim = Str(Val(Mid$(Chaine, 12, 2)) + Val(Me!TCorrec)) & Mid$(Chaine, 14, 9) Me!THeure = Tim End If Kill "C:AviationDataexif.bat" Kill "C:AviationDataexif.txt"
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour Laurent,
Je ne sais pas si ça peut t'être utile mais j'avais récupéré un module
de classe permettant de lire toutes les infos Exif. Je ne sais plus qui
en est l'auteur, qu'il m'en pardonne d'avance !
Je te poste ça sur ce lien : http://cjoint.com/?mzm56rIpTh
Il s'agit d'une bd avec un formulaire et le module de classe ExifReader
Au lancement du formulaire tu devras donner le chemin complet de
l'image. La date sera affichée dans une msgbox. A adapter à tes besoins.
Joyeux Noël à toi et à tous les passionnés d'Access ;-)
Bonjour !
Tout d'abord, joyeux Noël à toutes et à tous !!! ;-)
Voici mon problème ;
Je gère le parcours de tous les fichiers contenus dans un répertoire à
l'aide des fonctions Dir(Chemin) puis Dir (en boucle). Tout allait bien !
J'ai intégré une petite gestion de fichier texte juste après chaque Dir,
mais dès le 1er passage dans la boucle, la fonction Dir me renvoie une
chaine vide, car étant à la fin du parcours des fichiers dans le répertoire
(alors qu'il devrait y avoir plusieurs fiuchiers à prendre en compte par
Dir).
Tout fonctionne normalement et proprement (avec Freefile ...)
Aie, aie, aie !
En fait, je veux extraire une info Exif d'une photo d'appareil photo
numérique. Je charge donc le nom du fichier photo courant , je crée un
fichier "bat" que j''exécute ensuite (et qui lance un petit soft qui
s'appelle ExifList), qui crée un fichier texte, que je lis ensuite pour
reprendre l'info "date de cliché".
Il y a peut être plus direct pour lire facilement un exif sous VBA ?
Quelqu'un aurait une suggestion ? Merci d'avance !
L@urent
Ret = FreeFile
Open "C:AviationDataexif.bat" For Append As #Ret
Print #Ret, Commande
Close #Ret
Ret = Shell("C:AviationDataexif.bat", 0)
Do Until Len(Dir$("c:aviationdataexif.txt")) <> 0
Loop
For Ret = 1 To 100000
For Ret2 = 1 To 2000
Next
Next
'Lire le contenu du fichier résultat
Ret = FreeFile
Open "C:AviationDataexif.txt" For Input As #Ret
Input #Ret, Chaine
Close #Ret
If Len(Chaine) = 19 Then
Dat = Mid$(Chaine, 9, 2) & "/" & Mid$(Chaine, 6, 2) & "/" &
Mid$(Chaine, 1, 4)
Me("Date événement") = Dat
If Len(Me!TCorrec) = 0 Or IsNull(Me!TCorrec) Then
Me!TCorrec = "0"
End If
Tim = Str(Val(Mid$(Chaine, 12, 2)) + Val(Me!TCorrec)) & Mid$(Chaine,
14, 9)
Me!THeure = Tim
End If
Kill "C:AviationDataexif.bat"
Kill "C:AviationDataexif.txt"
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Je ne sais pas si ça peut t'être utile mais j'avais récupéré un module de classe permettant de lire toutes les infos Exif. Je ne sais plus qui en est l'auteur, qu'il m'en pardonne d'avance !
Je te poste ça sur ce lien : http://cjoint.com/?mzm56rIpTh Il s'agit d'une bd avec un formulaire et le module de classe ExifReader Au lancement du formulaire tu devras donner le chemin complet de l'image. La date sera affichée dans une msgbox. A adapter à tes besoins.
Joyeux Noël à toi et à tous les passionnés d'Access ;-)
Bonjour !
Tout d'abord, joyeux Noël à toutes et à tous !!! ;-)
Voici mon problème ; Je gère le parcours de tous les fichiers contenus dans un répertoire à l'aide des fonctions Dir(Chemin) puis Dir (en boucle). Tout allait bien ! J'ai intégré une petite gestion de fichier texte juste après chaque Dir, mais dès le 1er passage dans la boucle, la fonction Dir me renvoie une chaine vide, car étant à la fin du parcours des fichiers dans le répertoire (alors qu'il devrait y avoir plusieurs fiuchiers à prendre en compte par Dir). Tout fonctionne normalement et proprement (avec Freefile ...)
Aie, aie, aie !
En fait, je veux extraire une info Exif d'une photo d'appareil photo numérique. Je charge donc le nom du fichier photo courant , je crée un fichier "bat" que j''exécute ensuite (et qui lance un petit soft qui s'appelle ExifList), qui crée un fichier texte, que je lis ensuite pour reprendre l'info "date de cliché".
Il y a peut être plus direct pour lire facilement un exif sous VBA ?
Quelqu'un aurait une suggestion ? Merci d'avance !
Ret = FreeFile Open "C:AviationDataexif.bat" For Append As #Ret Print #Ret, Commande Close #Ret Ret = Shell("C:AviationDataexif.bat", 0)
Do Until Len(Dir$("c:aviationdataexif.txt")) <> 0 Loop For Ret = 1 To 100000 For Ret2 = 1 To 2000 Next Next
'Lire le contenu du fichier résultat Ret = FreeFile Open "C:AviationDataexif.txt" For Input As #Ret Input #Ret, Chaine Close #Ret If Len(Chaine) = 19 Then Dat = Mid$(Chaine, 9, 2) & "/" & Mid$(Chaine, 6, 2) & "/" & Mid$(Chaine, 1, 4) Me("Date événement") = Dat If Len(Me!TCorrec) = 0 Or IsNull(Me!TCorrec) Then Me!TCorrec = "0" End If Tim = Str(Val(Mid$(Chaine, 12, 2)) + Val(Me!TCorrec)) & Mid$(Chaine, 14, 9) Me!THeure = Tim End If Kill "C:AviationDataexif.bat" Kill "C:AviationDataexif.txt"
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr