|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
Доброго всем дня! На данный момент у меня существует программка, которая формирует строку, затем сжимает ее с помощью библиотеки zlib функцией ZCompressStr и запихивает получившееся в двухмерный штрих-код. Другая программка соответственно при считывании кода, распаковывает сжатую строку и производит с ней дальнейшие действия. Теперь, ту первую программку я пытаюсь перевести в кросс-платформу для работы ее на линуксе, zlib от делфей воткнуть в лазарь у меня не получилось. В стандартной библиотеке zlib в лазаре нет функции ZCompressStr. Вот и получается, что я пока не знаю как мне подружить сжатие строки и дальнейшую распаковку ее zlib-ом делфей. Что можете подсказать по данному вопросу? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 08:39 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
Я это использую. https://github.com/Nik-vr/lazarus-zlib/blob/master/ZLibEx.pas ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 08:57 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
LuciferNovoros, пробежался по коду модуля. Вроде что-то похожее на правду. Мне главное, чтобы в линуксе она взлетела и потом распаковалась злибом в делфи программе. Будем пробовать. Спасибо. Отпишусь о результатах как попробую ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 09:06 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
dartveider13 Что можете подсказать по данному вопросу? Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55.
... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 10:42 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 12:34 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
Ух ты сколько вариантов. Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 13:39 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
Kazantsev Alexey until Count <> Growth * SizeOf(WideChar);[/src] ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 13:54 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
_Vasilisk_ Kazantsev Alexey until Count <> Growth * SizeOf(WideChar);[/src] Почему не первые 4 байта? TLV - тип, длина, значение. Вроде классика такого подобия передачи данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 15:23 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
А полученные сжатием TBytes после сжатия как затолкать в объект ШК библиотеки LazBarCodes? В делфях я использовал длл-ку генерации символики ацтек ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 15:42 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
_Vasilisk_ Kazantsev Alexey until Count <> Growth * SizeOf(WideChar);[/src] А как вообще выполняется распаковка, когда размер неизвестен? ...мне давеча потребовалось (с помощью C++) распаковать поток, сжатый дельфийским классом TCompressionStream. Но вот там (в С++) дельфийского класса TDeCompressionStream нет, и, как всегда - трясти нужно, а не думать... тупо выделял память сперва 2*размер сжатого, потом в цикле пытался распаковать в указанный буфер, если получал "мало памяти" - то увеличивал буфер, и в начало цикла. Оно как бы работает, но, мягко говоря, грязновато. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 15:51 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
wadman Почему не первые 4 байта? wadman TLV - тип, длина, значение. Вроде классика такого подобия передачи данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 16:40 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
_Vasilisk_ Потому что в этой классике длина - это длина текущих данных, а не данных, которые получаются после преобразования Важно знать, что контролировать при получении, а не после. После преобразования уже иные процессы идут. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 16:43 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
ъъъъъ А как вообще выполняется распаковка, когда размер неизвестен? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 16:47 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
ъъъъъ А как вообще выполняется распаковка, когда размер неизвестен? Последовательно, пока inflate не вернёт тебе Z_STREAM_END. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 17:09 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
dartveider13 А полученные сжатием TBytes после сжатия как затолкать в объект ШК библиотеки LazBarCodes? Примерно так: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 17:30 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
Kazantsev Alexey, попробовал на тестовом проекте. Вылетает пустая ошибка. ШК исчезает с радаров ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2021, 07:37 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
гемор какой-то с этими lazbarcodes, сложно готовятся))) На делфе я использовал библиотеку aztecgen. Он в объект TImage рисовал код. Может есть что-то подобное? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2021, 07:49 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
Или может быть вариант задействовать библиотеку lazbarcodes, но генерировать код не на компоненте а в картинке? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2021, 08:12 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
Что мешает портировать ацтекген под лазаря? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2021, 10:28 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
Fr0sT-Brutal, исходник этой либы написан как я понимаю на плюсах, я в них не очень. Тут как я понимаю надо попробовать собрать его в линуксе? Что получится фиг знает. С инета я взял его и скомпиленой длл-кой ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2021, 10:54 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
dartveider13 попробовал на тестовом проекте. Вылетает пустая ошибка. ШК исчезает с радаров Размер данных какой? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2021, 11:22 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
Kazantsev Alexey, Попробовал на простом Hello world. Просто сделал тестовый проект. Сжатие и распаковка работают для строк на ура. С учетом того, что я перевожу их еще до сжатия в base64 тоже нормально работает. А вот когда пытаюсь в объект azteccode затолкать, то вываливает ошибку. Причем по дебагеру он проходит эту строку присваивания переменной строки без ошибок ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2021, 11:29 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
Kazantsev Alexey dartveider13 А полученные сжатием TBytes после сжатия как затолкать в объект ШК библиотеки LazBarCodes? Примерно так: Код: pascal 1. 2.
после этой строки ошибка в модуле ubarcodes на строке 381 Версия lazbarcodes 1.0.4 если это о чем то говорит ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2021, 11:32 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
dartveider13, Похоже, проблема появляется, когда в данных присутствует нулевой байт. Даже просто ШК.Text := #0; приводит к ошибке. Можно, либо попытаться исправить ошибку в LazBarCode, либо изменить формат кодирования данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2021, 11:54 |
|
Как подружить zlib от Deplhi с Lazarus
|
|||
---|---|---|---|
#18+
Kazantsev Alexey dartveider13, Похоже, проблема появляется, когда в данных присутствует нулевой байт. Даже просто ШК.Text := #0; приводит к ошибке. Я всегда поражался таким способностям так быстро понимать откуда проблема)))) Kazantsev Alexey dartveider13, Можно, либо попытаться исправить ошибку в LazBarCode Думаю с моими способностями, я вряд ли это осилю Kazantsev Alexey dartveider13, либо изменить формат кодирования данных. А здесь подразумевается замена UTF8String на что-то другое? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2021, 12:18 |
|
|
start [/forum/topic.php?fid=58&msg=40114222&tid=2036843]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
263ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
2ms |
others: | 266ms |
total: | 633ms |
0 / 0 |