# EXIF aus jpg-Dateien auslesen



## ::emanuel:: (7. April 2004)

Ist es möglich, in VB6 EXIF-Informationen aus jpg-Dateien auszulesen?
Ich bräuchte nur das "DateTimeOriginal". 
Kann mir vielleicht jemand mehr über Marker sagen? <-- diese braucht man glaub ich um Headerinformationen lesen zu können.
Wäre für jede Antwort dankbar!


----------



## thekorn (8. April 2004)

check mal diesem Link. Ersparrt einigesd an Arbeit, wenn du es selber machen würdest:
http://sourceforge.net/projects/exifclass/ 

gruß
thekorn


----------



## ::emanuel:: (8. April 2004)

Danke für die Info, werd mir das mal genauer ansehen.


----------



## ::emanuel:: (8. April 2004)

Super, ich habs geschafft. Jetzt kann ich OriginalDateTime mit dem ExifReader Klassenmodul auslesen.
Ich hätte aber jetzt noch eine Bitte. Kann ich von OriginalDateTime die einzelnen Daten auslesen? Das heißt Jahr, Monat und Tag und diese in eine eigene Variable schreiben? 
Ich glaube man kann aus der Caption eines Labels nur die ersten vier Zeichen oder die Zeichen drei bis vier auslesen oder?

Wäre dankbar für jede Antwort!


----------



## Ein_Freund (8. April 2004)

Mit den Funktionen Day(), Month() & Year() kannst Du die einzelnen Teile eines Datums auslesen.


----------



## ::emanuel:: (8. April 2004)

Hi!
Ich hab für die Beschriftung eines Labels folgende Anweisungen:

```
Dim objExif As New ExifReader
    Dim txtExifInfo As String
    objExif.Load "H:\Fotos\Eigene Fotos\Fotoalbum\Zwischenspeicher3\01-1.jpg"
    txtExifInfo = objExif.Tag(DateTimeOriginal)
    Fotomanagement.DatumZwischenspeicher.Caption = txtExifInfo
```
Wie muss ich jetzt die Month() einsetzen, damit ich als Caption den Monat bekomme und nicht die ganzen Informationen?
Ich hab ja sowas gedacht:

```
Fotomanagement.DatumZwischenspeicher.Caption = Month(txtExifInfo)
```
aber das funktioniert leider nicht.


----------



## thekorn (8. April 2004)

*Umwandlung String -> Datumsformat*

das Problem ist hier, dass "txtExifInfo" eine "String"-Variable ist. mit der Umwandlungsfunktion "DateValue" wandelst du diese Variable in ein Gültiges Datumsformat um, welches du dann mit Month() etc. auswerten kannst:


```
Dim objExif As New ExifReader
    Dim txtExifInfo As String
    Dim jpg_Datum as Date

    objExif.Load "H:\Fotos\Eigene Fotos\Fotoalbum\Zwischenspeicher3\01-1.jpg"
    txtExifInfo = objExif.Tag(DateTimeOriginal)
    jpg_Datum = DateValue(txtExifInfo)
    Fotomanagement.DatumZwischenspeicher.Caption = Month(jpg_Datum)
    '....
```


gruß
thekorn


----------



## ::emanuel:: (8. April 2004)

Danke für die Antwort, aber ich hab's inzwischen selbst geschafft.
Ich hab einfach die Split Funktion verwendet. Das Datum, das ich erhalten habe, sah wie folgt aus:

jahr:monat:tag stunde:minute:sekunde
also z.B.: 2004:04:05 17:50:32

ich musste nur jahr, monat und tag von der zeit trennen und dann nochmal jahr, monat und tag voneinander. funktioniert einwandfrei *freu*  
Danke trotzdem!


----------

