Kesalahan JPEG 42 dilaporkan saat aliran terpotong. Misalnya, jika Anda mencoba memuat file panjang nol ke dalam TJPEGImage
maka kesalahan 42 adalah hasil akhirnya.
Jika beberapa gambar ditampilkan, tetapi tidak semua, maka penjelasan yang paling mungkin adalah bahwa data tersebut entah bagaimana tidak bolak-balik ke DB dan kembali.
Periksa ukuran bidang BLOB saat Anda menuliskannya. Periksa apakah ukurannya sesuai dengan ukuran file saat Anda menulisnya ke file disk. Periksa apakah file disk adalah JPEG yang valid. Kemudian konfirmasikan bahwa bidang BLOB memiliki panjang yang sama persis ketika Anda membacanya kembali. Mungkin ada yang salah dengan kode DB Anda dan alirannya terpotong.
Jadi, langkah pertama di sini adalah mengonfirmasi bahwa Anda dapat memulihkan data yang sama persis dengan yang Anda masukkan ke dalam DB.
Satu-satunya pemikiran lain yang saya miliki adalah bahwa grafik dalam kontrol gambar tidak selalu berupa JPEG. Kode yang Anda gunakan untuk memuat gambar, Image1.Picture.Graphic.LoadFromStream()
mengasumsikan bahwa data adalah JPEG. Jika Anda telah menyimpan sesuatu selain JPEG maka LoadFromStream()
akan gagal.