Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

GPS Koordinaten aus EXIF-Header auslesen

189 views
Skip to first unread message

Michael Happ

unread,
Apr 28, 2010, 8:01:26 AM4/28/10
to
Hallo Gemeinde,

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

Jörg Ostendorp

unread,
May 3, 2010, 5:39:15 AM5/3/10
to
Hallo Michael, hallo zusammen,

> 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

Jörg Ostendorp

unread,
May 4, 2010, 10:44:15 AM5/4/10
to
Hallo 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�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

Michael Happ

unread,
May 9, 2010, 7:40:39 AM5/9/10
to
Hallo Jörg,

> 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

0 new messages