|
|
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
Была DLL UDF под 32 бита, а тут перебросил на 64 бит и все, что связано со строками работает как-то неадекватно. Обычный sybstr (собственный) и тот работает не так... Что там изменилоось? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2014, 15:31 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
verveБыла DLL UDF под 32 бита, а тут перебросил на 64 бит и все, что связано со строками работает как-то неадекватно Программы всегда работают точно так , как написаны. Ты в курсе, что 64 бит Дельфи - исключительно юникодные?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2014, 17:29 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, да... Только 32 бита отрабатывает корректно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2014, 18:27 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
Более того, если функция в Delphi программе, то работает и под 64 битной ОС отлично ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2014, 18:29 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
verveфункция Исходники показать постесняешься?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2014, 19:17 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
verve, ты пример давай. Код UDF функции, DDL её объявления, ну и собственно запрос в котором она не так работает. P.S. По возможности от UDF надо оказываться. Это до FB2.1 без них было туго. Сейчас большинство из них можно встроенными заменить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2014, 19:18 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
Код: pascal 1. 2. 3. 4. Даже если так, то срабатывает так: с нужной позиции берет в 2 раза больше символов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2014, 20:33 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
verve, у тебя БД в какой кодировке? PWideChar - 2 байта на символ PAnsiChar - 1 байт SubStr - можно заменить на стандартный SUBSTRING ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2014, 20:35 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
Только мне кажется странным преобразовывать widechar в char путём приведения типов??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2014, 20:36 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
verveДаже если так И после этого ты утверждаешь, что знаешь об юникодности... То, что эта функция вообще не валит сервер - уже чудо. Несоответствие параметров передаваемым типам просто меркнет на фоне возврата указателя на уже освобождённую память. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2014, 20:51 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
Код работает под 32 бита))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2014, 21:51 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
verveКод работает под 32 бита))) Во-первых, потому что он скомпилирован какой-нибудь рухлядью типа Delphi 7. Во-вторых, дуракам везёт. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2014, 22:05 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
Симонов Денис, В дельфях с поддеркой Unicode - PWideChar=PChar... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2014, 00:43 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
verve, При такой реализации есть неплохой шанс вернуть мусор. Почитай блог GunSmoker`a - он много писал об этом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2014, 00:45 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
DarkMaster, я бы сказал, что наоборот PChar=PWideChar ибо PWideChar везде одинаков ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2014, 07:41 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
verveПочему? Лови рабочий пример. На 64 битном, на юникодной базе работает. Код: sql 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. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2014, 09:13 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
Спасибо! Проблема была в определении длины строки))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2014, 15:42 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
verve> Спасибо! Проблема была в определении длины строки))) А по-моему проблема в том, что ты не желаешь воспользоваться советом от Симонов Денис ... -- Vladimir A.Bakhvaloff Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2014, 16:01 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
В прошлом годе озадачился переходом на x64 UDF. В голове родилось такое понимание работы с кодовыми страницами внутри Firebird. Если в чем-то ошибаюсь, просьба поправить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2014, 18:59 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
FedorinoFFВ прошлом годе озадачился переходом на x64 UDF. В голове родилось такое понимание работы с кодовыми страницами внутри Firebird. Если в чем-то ошибаюсь, просьба поправить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2014, 19:14 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
Поручик ·· Ржевский, Да, виноват, неправильно вложил картинку. Правой кнопкой по значку картики под спойлером и открыть ссылку. Откроется страничка с картинкой на Яндекс.Диск ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2014, 21:55 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
FedorinoFF, разуй глаза - нет никакой картинки "под спойлером". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2014, 22:47 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
FedorinoFF, упс, виноват, картинка есть, у меня она видна "как текст"... :-( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2014, 22:48 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
kdvFedorinoFF, разуй глаза - нет никакой картинки "под спойлером". Ну вот ведь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2014, 23:02 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
FedorinoFF, блин, ну никак не понимаю как картинку вставлять. вроде файл выбрал.. может Opera, или руки... и сообщение редактировать нельзя.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2014, 23:03 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
Ну вот же оно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2014, 23:05 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
Во, походу, если начать писать сообщение будучи не авторизованным, то форма редактирования сообщения выглядит иначе, нежели чем при написании после авторизации. Понаблюдаем... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2014, 23:09 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
FedorinoFF, я уже написал. "картинка с другого сайта" имеет и фон поста, и текст как у текстов поста. Не знаю, зачем это сделано. Сколько на sql.ru сижу, а вот эту фигню только обнаружил. Насчет картинки "преобразования чарсетов" - udf не является чем-то особенным, здесь дело скорее в преобразовании одного чарсета в другой, например, когда значение одной строки передается в другую, а они имеют разные чарсеты. И если чарсеты могут быть преобразованы - тогда все ок. Если нет - ошибка. Поэтому, обычно никто чарсет у строковых параметров udf не указывает. Однако, когда появилась поддержка UTF8, оказалось, что народ писал udf, предполагая, что у них база в win1251 (или в none), и клал болт на то, что передается внутрь udf. именно поэтому в своем unicode_faq я привел пример udf, обрабатывающей utf8, и дал комментарии, как это работает с базами или данными в Win1251. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2014, 23:09 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
FedorinoFF, у меня выглядит так. поди догадайся, что это картинка, а не текст. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2014, 23:11 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
FedorinoFFну никак не понимаю как картинку вставлять. Ну так не косплей блондинку, вставляй текст. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2014, 23:22 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
kdvFedorinoFF, именно поэтому в своем unicode_faq я привел пример udf, обрабатывающей utf8, и дал комментарии, как это работает с базами или данными в Win1251. Да, в том числе и этот faq я видел, и что-то от него подчерпнул. Но некоторые , для кого-то "явные" вещи, оставались неявными для меня. Кроме того, под линуксом были всякие неожиданности, да и под Windows, если играть чарсетами подключений, что-то бывало не айс. Потому, как наглядное пособие, состряпал картинку. Если она имеет право на жизнь, то может пригодиться коллегам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2014, 23:24 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovFedorinoFFну никак не понимаю как картинку вставлять. Ну так не косплей блондинку, вставляй текст. Да вроде разобрался. причина тут 16552238 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2014, 23:26 |
|
||
|
UDF DLL 64 бит Delphi
|
|||
|---|---|---|---|
|
#18+
FedorinoFF Потому, как наглядное пособие, состряпал картинку. при всей моей любви к диаграммам состояний (типа того), процесс работы с чарсетами в моей голове выглядит несколько иначе. И для этого картинки рисовать не обязательно :-) по крайней мере, до сих пор картинки вроде этой никому не понадобились. А с появлением юникода как на клиенте, так и на сервере, необходимость в картинках отпала, т.к. все преобразования свелись к виду "чарсет А -> юникод -> чарсет А", если "чарсет А" вообще где-либо используется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2014, 00:56 |
|
||
|
|

start [/forum/topic.php?all=1&fid=40&tid=1563355]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
85ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
| others: | 224ms |
| total: | 409ms |

| 0 / 0 |
