|
udf 32->64
|
|||
---|---|---|---|
#18+
Есть UDF написанные еще на Delphi7 (исходники есть) В чем можно без особых усилий перенести их на x64? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2017, 13:35 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
FPC с mode delphi. Там есть нюансы, но обычно всё работает как ожидалось. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2017, 13:49 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
konstschЕсть UDF написанные еще на Delphi7 (исходники есть) В чем можно без особых усилий перенести их на x64? Можно в Delphi XE2 и выше. Могу помочь перенести, без особых усилий :) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2017, 15:01 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
fpc явно не в тему, модуль таких в нем нет ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2017, 15:13 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
konstschfpc явно не в тему, модуль таких в нем нетНу, тебе лучше знать. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2017, 15:48 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
Скомпилировал в дельфи 10 берлин библиотечка потяжелела в 10 раз ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2017, 21:43 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
konstsch, ну.. если ты там внутри DLL использовал VCL то верю ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2017, 21:48 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
В итоге запрос с УДФ просто виснет. В логе серевера ошибок нет.. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2017, 00:16 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
Нормальное поведение при вечном цикле, например. Логирование внутри функции поможет. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2017, 00:19 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
Выкинуть нах и забыть аки страшный сон предлагали? Делают-то УДФки хоть полезное что или просто жаль выбросить? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2017, 13:09 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
konstsch, это по хорошему на клиенте делать надо. Не фиг север раздувать ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2017, 11:30 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
10 лет раздувался раздувался так и не лопнул ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2017, 11:34 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
konstsch, ну а чего ты хочешь. Картинку небось сжимал с помощью компонентов VCL. Так они в последних дельфях на порядок толще стали. Да и геморройно это учитываю что менеджеры памяти firebird и delphi абсолютно разные. Ты уже учёл, что в новых Delphi строки юникодные по умолчанию? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2017, 12:09 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
строки не передаю и не использую есть только указатель pchar ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2017, 19:26 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
а с этими типами все так же осталось? Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2017, 19:36 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
Ужоснах. Мне даже лень вспоминать размерность Longint в дельфях при виде такого. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2017, 19:40 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
konstschв чем ужас? А, нет, извини, оно и в С заголовках так объявлена. За исключением WordBool, который совсем не к месту. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2017, 20:00 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
Я недавно напоролся на бага с хэндлами на 64-х разрядах и теперь нервно отношусь к хэндлам, объявленным как указатели. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2017, 20:12 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
Вроде как от БД получает то что нужно только вот с этим непонятно: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
пишет в файл так с 0000 до 0048 пишет нормальные данные с 0050 до 0098 все нули с 0100 до 00e8 нормальные данные потом опять нули и так далее p.s. использовал lazarus ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 00:52 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
konstschстроки не передаю и не использую есть только указатель pcharЕсли где-то будет каст (даже неявный) к String - он будет воспринят как WideString. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 02:34 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
Заменил на PAnsiChar прошло дальше до: Код: pascal 1.
point_18_Buffer= яШяа point_18_ReadLength = 5587 point_18_Handle = 84026616 point_18_except Access violation at address 00000000052CA224 in module 'bl.dll'. Read of address FFFFFFFFFFFFFFFF и буфер не пустой и длинна есть но вылетает с ошибкой ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 11:11 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
konstsch, ты тут какие-то отдельные куски выкладываешь. Думаешь по ним ясно где у тебя ошибка? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 11:14 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
Код: 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 11:35 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
while затер сорри Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 15:52 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
konstsch, для началу, у тебя неверная структура TBLOB. Вот моя (она работает и на 32 и на 64 в FPC): Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
В BlobGetSegment 3-й параметр у тебя Word, а нужен LongInt. Дальше не смотрел - это уже полный крах. Как у тебя раньше могло что-то работать - не представляю. Случайно везло. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 17:01 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
а short и pint у вас что ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 17:17 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
YuRockВ BlobGetSegment 3-й параметр у тебя Word, а нужен LongInt. Оригинал с тобой не согласен: Код: plaintext 1. 2.
Но из-за округления параметров в стеке до int это не влияет на результат. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 17:20 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
konstschа short и pint у вас что Pint = Pointer Short = Smallint Dimitry Sibiryakov, а, так это у меня случайно работало) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 18:14 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
Код: pascal 1.
что угодно туда клади все равно то же самое ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 18:34 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
konstsch, Так, на всякий. У тебя в udf присваивается где-то IsMultiThread := True? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 18:48 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
konstschи буфер не пустой и длинна есть но вылетает с ошибкой А чему в это время равно oBlob вообще и PutSegment в частности? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 19:00 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
В общем, проверяй: для 32 бит: размер структуры TBlob должен быть 28 байт, смещение PutSegment - 20. для 64 бит: размер 48 байт, смещение 32. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 19:39 |
|
udf 32->64
|
|||
---|---|---|---|
#18+
Скорей всего выравнивания полей не те. В старых Delphi оно вроде 4, а в новых 8. В FPC вроде тоже 4. Для X64 нужно 8. Код: 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 19:39 |
|
|
start [/forum/topic.php?all=1&fid=40&tid=1561348]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
68ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
others: | 11ms |
total: | 186ms |
0 / 0 |