Bonjour à tous,

J'ai passé déjà pas mal d'heures sur le net pour trouver une solution à mon problème, en vain. Alors je me suis décidé à poster ma question ici; peut-être quelqu'un aura-t-il une piste pour m'aider.
Mon problème est simple: j'essaie de récupérer certaines données EXIF de mes photos. J'utilise notamment une fonction pour récupérer la date de prise de vue, avec le code ci-dessous:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
    Public Function datecreate(ByVal Path As String) As String
        Dim img As Image = Image.FromFile(Path)
        Dim prop As PropertyItem = img.GetPropertyItem(&H9003)
        Dim sDate As String = System.Text.Encoding.ASCII.GetString(prop.Value, 0, prop.Len).TrimEnd(Chr(0))
        Dim dateTimeOriginal As DateTime = DateTime.ParseExact(sDate, "yyyy:MM:dd HH:mm:ss", Nothing)
        Dim datefinale As String
        datefinale = Mid$(dateTimeOriginal, 7, 4) & "_" & Mid$(dateTimeOriginal, 1, 2) & "_" & Mid$(dateTimeOriginal, 4, 2)
        Return datefinale
    End Function
Ce code fonctionne parfaitement bien pour toutes mes photos au format JPG. Par contre, dès lors que je tombe sur des fichiers au format RAW (extension ".RW2" pour les boîtiers Panasonic), j'obtiens systématiquement une exception du type:
Une exception de première chance de type 'System.OutOfMemoryException' s'est produite dans System.Drawing.dll
J'ai pas mal galéré pour tenter d'identifier la cause du problème, mais je ne suis pas un expert du VB. J'ai essayé de passer par la méthode "FromStream" plutôt que "FromFile"; le message d'erreur change, mais au final il y a toujours une exception et ça ne fonctionne pas.

Si quelqu'un a une idée, je suis preneur...

Merci d'avance,
Jimbo