|
|
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток! Есть БД на Access, в ней есть поле с типом "Вложение". В каждом таком поле лежит картинка jpg. Отвечу сразу на вопрос почему не OLE? Просто не я делал эту базу, а переделывать, сохраняя картинки в файлы и загоняя их в другой тип поля как-то не хочется. Вопрос до банального прост. Мне надо вывести эту картинку в каой-нибудь контрол (Image, DBImage, cxImage...) Методом гуглежа нарыл, что в данном типе файла есть подтипы: FileName, FileData, FileType. Получается, что данные находятся в FileData. Делаем запрос типа: Код: sql 1. 2. 3. 4. Делфя в ADOQuery воспринимает его как Blob. Вроде все хорошо, но через DBImage не выводится (Bitmap image is not valid). Подумал, что дело в jpg. Попробовал через простой Image и объекты MemoryStream & JpegImage грузить картинку, но на считывании в jpegimage из memoryStream ошибка #53. По дебагеру после загрузки блоба в МС пусто. Подскажите пожалуйста как победить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2018, 14:39 |
|
||
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
dartveider13Попробовал через простой Image и объекты MemoryStream & JpegImage грузить картинку, но на считывании в jpegimage из memoryStream ошибка #53. Как именно пробовал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2018, 14:41 |
|
||
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
wadman, Вот так пробовал первый раз Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2018, 14:45 |
|
||
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
BlobStream на MemoryStream пробовал заменить, та же фигня. Мне кажется что раз в таком типе поля может быть несколько файлов, может ему еще как то надо FileName указать? Только как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2018, 14:50 |
|
||
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
dartveider13 Код: pascal 1. Вместо этого сохрани в локальный файл и посмотри содержимое. Точно там jpeg? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2018, 15:13 |
|
||
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
wadman, неа, это не чистый jpg. Но в кракозябрах файла тоталом по F3 в начале есть буквы j.p.g ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2018, 15:24 |
|
||
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
dartveider13wadman, неа, это не чистый jpg. Но в кракозябрах файла тоталом по F3 в начале есть буквы j.p.g А раз это не "чистый jpg", то перед тем, как подсовывать TJPEGImage его нужно как-то очистить. ЗЫ: У jpeg вначале идёт сигнатура FF D8 FF E0 00 10 A4 46 49 46 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2018, 15:30 |
|
||
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
goldmi45, ммм а как его очистить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2018, 15:31 |
|
||
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
goldmi45сигнатура FF D8 FF E0 00 10 4A 46 49 46 поправил ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2018, 15:32 |
|
||
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
dartveider13goldmi45, ммм а как его очистить? Возможно, в блобе просто дописаны буквы " j.p.g". Если так, то нужно просто брать не весь блоб, а только то, что начинается после этого заголовка. Посмотрите, есть ли в файле, в который вы сохранили блоб, сигнатура jpeg или нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2018, 15:37 |
|
||
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
насколько помню Access в начало блоба jpg пишет свою служебную информацию потому нужно сначала сделать b.Seek куда нужно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2018, 15:41 |
|
||
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
[quot dartveider13 Отвечу сразу на вопрос почему не OLE? [/quot] Дурагнасколько помню Access в начало блоба jpg пишет свою служебную информацию А не в OLE формате ли он пишет содержимое?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2018, 15:45 |
|
||
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovА не в OLE формате ли он пишет содержимое?.. + ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2018, 17:48 |
|
||
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
goldmi45, Ну F3 в тотале сигнатуру вряд ли покажет, там кракозябры только. Буду сегодня дальше гуглить. Мне кажется должно быть какое-то простое решение... Судя по описанию типа поля в вложении могут быть разные файлы (их может быть несколько). Вот скорее всего в этом блобе они кучей и хранятся. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2018, 05:34 |
|
||
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
HeX - просмотрщик показывает, что есть сигнатура jpeg, но до нее действительно есть какая-то служебная информация. Ща будем пробовать обрезать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2018, 05:45 |
|
||
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
В общем опытным путем хирурга-проктолога оказалось, что первые 20 байт как раз лишняя инфа. В итоге Код: pascal 1. 2. 3. 4. 5. 6. дало картинку))) Всем спасибо. Особенно за сигнатуру.))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2018, 06:26 |
|
||
|
Access. Вывод картинки из поля типа Вложение
|
|||
|---|---|---|---|
|
#18+
dartveider13, https://www.filesignatures.net/index.php?page=search&search=JPEG&mode=EXT - в дополнение по сигнатурам. У ЖПГ они разные могут быть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2018, 09:24 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39660819&tid=2040752]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
145ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 431ms |

| 0 / 0 |
