Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hallo,

ich speicher Bilder als BLOB Datei in einer Datenbank dann lese ich sie wieder aus und stecke sie in ein Bytearray, danach wandle ich die Bilder wieder in Images um.

Um die Bilder zu speichern benutze ich die Save Methode:  images(i).Save(path & "\img\" & Dateiname(i))

Ich erhalte die Fehlermeldung: Allgemeiner Fehler in GDI+

es wird auch eine Bilddatei erzeugt nur ist diese leer.

 

Bitte um Rat

 

Danke :-)

  • Autor

Hallo danke für die Antwort

das ganze ist in Visual Basic geschrieben

wandlet die Bytes in ein Image um : images(counter) = byteArrayToImage(mybytearray)

die Funktion die die Bytes umwandelt:

Public Function byteArrayToImage(ByVal byteArrayIn As Byte()) As Image
        Using mStream As New MemoryStream(byteArrayIn)
            Return Image.FromStream(mStream)
        End Using
    End Function

versucht die Bilder zu speichern :  For i As Integer = 0 To UBound(images)

                                                                 images(i).Save(path & "\img\" & Dateiname(i))
                                                            Next

 

Mal davon abgesehen, dass ich es immer noch für eine saublöde Idee halte, Bilder als BLOB in einer Datenbank zu speichern* (Ausnahme vllt. sowas wie MSSQL Server mit seinen FileTables):

Probier mal das Return aus dem Using zu nehmen:

 

Public Function byteArrayToImage(ByVal byteArrayIn As Byte()) As Image
        Dim img as Image
		Using mStream As New MemoryStream(byteArrayIn)
            img = Image.FromStream(mStream)
        End Using
		Return img
End Function 

Hoffe, die Syntax stimmt - Letztes Mal was mit VB(A) gemacht hatte ich in den 90ern :)

 

*Ich betreue ein Altsystem, in dem GB-weise Daten in eine DB gestopft werden - Syncronisation/Backup/Restore is relativ eklig..

Bearbeitet von RipperFox

  • Autor

Hallo danke für die Antwort ,

es hat aber nicht geholfen, geholfen hat die BLOB in einen Memorystream zu packen und dann in eine Bitmap:  

images(counter) = New Bitmap(New MemoryStream(mybytearray))

die Funktion die ich vorher benutzt habe um die BLOB datei umzuwandeln kann ich so weg lassen nur bekomme ich jetzt diese Meldung wenn ich versuche die Bilder zu speichern :

das angegebene Pfadformat wird nicht unterstützt

der Fehler tritt an der Stelle auf an der ich die Images speichern möchte

  images(i).Save(path & "\img\" & Dateiname(i))

 

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.