habe mir die EXIF Reader Klasse von sourceforge.net heruntergeladen.
Funktioniert soweit, nur: das Auslesen der GPS-Tags ist nicht
integriert. Ich kann mittels ExifTool von Phil Harvey die Koordinaten
in ein Textfile schreiben und dann auslesen, aber das ist natürlich
sehr umständlich.
Hat jemand ein Codeschnipsel zur Erweiterung der Exif-Klasse?
Gruß Michael
> habe mir die EXIF Reader Klasse von sourceforge.net heruntergeladen.
> Funktioniert soweit, nur: das Auslesen der GPS-Tags ist nicht
> integriert. Ich kann mittels ExifTool von Phil Harvey die Koordinaten
> in ein Textfile schreiben und dann auslesen, aber das ist nat锟絩lich
> sehr umst锟絥dlich.
>
> Hat jemand ein Codeschnipsel zur Erweiterung der Exif-Klasse?
Leider hab ich keine Antwort - die Frage besch锟絝tigt mich allerdings auch
sehr (wenngleich sie zugegeben nur bedingt mit Access zu tun hat).
Da noch keine Antwort gekommen ist, fehlt vielleicht einfach der Anreiz?
Ich schreibe daher hiermit den Preis von *einem e-Pl锟絫zchen* zur Belohnung
f锟絩 sachdienliche Hinweise aus!
M锟絞licherweise hat jemand ja gerade nur keinen Code zur Hand, kann aber das
EXIF-Format zumindest erkl锟絩en. Genau das verstehe ich n锟絤lich nicht
(insbesondere das Offset-Ged锟絥s). Dort steht nach meinem Verst锟絥dnis, dass
der GPSinfo-Tag ein Pointer auf die dahinterlgende GPS-Tabelle sei. Diese
wiederum kann zwar eine variable Gr锟斤拷e haben - die ersten Tags wie Latitude
und Longitude m锟絪sen aber immer gesetzt sein, solange der GPSInfo-Tag halt
etwas zur锟絚kgibt. Somit w锟絩e mein erster Ansatz, einen Type mit den
einzelnen Pflicht-Tags zu erstellen und diesen dann per CopyMemory zu
f锟絣len. Das funktioniert aber leider nicht, d.h. die Werte stimmen nicht.
BSP (im Form):
Private Declare Sub CopyMemory Lib "kernel32.dll" Alias "RtlMoveMemory"
(ByRef Destination As Any, ByRef Source As Any, ByVal Length As Long)
Private Type GPSInfo_Detail
GPSVersionID(3) As Byte '4 * Byte
GPSLatitudeRef(1) As Byte '2 * Ascii
GPSLatitude(2) As Double '3 * Rational
GPSLongiudeRef(1) As Byte '2 * Ascii
GPSLongitude(2) As Double '3 * Rational
'etc
End Type
Private Sub Command0_Click()
Dim objExif As New ExifReader
Dim lngExifInfo As Long
Dim gpsTest As GPSInfo_Detail
objExif.Load "MeinBild.jpg"
lngExifInfo = objExif.Tag(GPSInfo)
CopyMemory gpsTest , lngExifInfo, 4
MsgBox gpsTest .GPSVersionID(0) 'etc
End Sub
Ach so, noch die links:
Exif-Klasse: http://sourceforge.net/projects/exifclass/
Exif-Doku: http://www.exif.org/specifications.html (->Exif 2.2)
--
Viele Gr锟斤拷e
J锟絩g Ostendorp
Access-FAQ: www.donkarl.com
> habe mir die EXIF Reader Klasse von sourceforge.net heruntergeladen.
> Funktioniert soweit, nur: das Auslesen der GPS-Tags ist nicht
> integriert. Ich kann mittels ExifTool von Phil Harvey die Koordinaten
> in ein Textfile schreiben und dann auslesen, aber das ist nat�rlich
> sehr umst�ndlich.
Gerade erst gesehen, bei den Exiftools gibts ja auch ein Beispiel f�r VB6:
http://owl.phy.queensu.ca/~phil/exiftool/modExiftool_101.zip
Wenn Du mit der exe an sich leben kannst, kriegst Du die Koordinaten also
auch direkt in Deinen Code, ohne den Umweg �ber die Textdatei.
--
Viele Gr��e
J�rg Ostendorp
Access-FAQ: www.donkarl.com
> Gerade erst gesehen, bei den Exiftools gibts ja auch ein Beispiel für VB6:
Vielen Dank für den Link. Habe zwischenzeitlich auch noch mal
recherchiert ... leider ohne Erfolg.
Nun ja, die Variante mit der EXE ist auch eine Lösung, habe sie
inzwischen in meine Anwendung "eingebaut" und es funktioniert.
Viele Grüße
Michael Happ