|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
Добрый день! Ситуация такая. Поддерживаю штаны старым программам, написанных на Delpphi в прошлом десятилетии. Сервер FireBird 1.5. Программы работают через BDE и тянут их еще с win2000. Для того, чтобы они работали на win7 был скачен установщик BDE посвежее и свежая (на то время) gds32.dll. С новой dll заработали программы, которые не использовали в структуре ключевые слова, введенные в более поздних версиях FireBird (насколько я понял в диалекте 3). Те программы, которые использовали в названиях полей "type", "year" и т.п. c новой dll работали, но ругались на ключевые слова. Для них вместо новой gds32.dll скормили старую(не исключено, что еще от InterBase 5) - положили в место, откуда запускалась программа. И все работало корректно. Сейчас надо перетаскивать эти же программы на win10. Программы, с базами не использующие ключевые слова 3его диалекта заработали нормально. Но вот программы с базами, использующие ключевые слова отказались работать со старой gds32.dll(от InterBase) - нет соединяется с базой, но работают с новой dll с ошибками(ругается на эти поля). Подскажите, пожалуйста, есть ли бескровное решение этой проблемы? Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 08:06 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
Михаил ППодскажите, пожалуйста, есть ли бескровное решение этой проблемы? Я-бы первым делом попробовал посвежее fbclient.dll, которую можно переименовать в gds32.dll. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 08:36 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
авторЯ-бы первым делом попробовал посвежее fbclient.dll, которую можно переименовать в gds32.dll. Скачал последнюю версию для FB 1.5.3. и переименовал. Все также. Программа работает с ним до тех пор, пока не начинаются запросы с зарезервированными именами. Скорее всего база создавалась в 1 диалекте, когда разрешалось называть поля type, year и т.п. В 3ем диалекте их зарезервировали. До win10 можно было использовать старый gds32.dll. В Win10 он отказывается работать. Новые работают, но такая неприятность. Как бы заставить работать под win10 старую dll или найти новую, поддерживающую первый диалект. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 10:31 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
Михаил ПСкачал последнюю версию для FB 1.5.3. и переименовал. Есть куда более свежее. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 10:59 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
что-то не о том сия песня звучала... КЛИЕНТ не парсит запросы. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 11:16 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
Проще программы доработать. Костыли могут отвалиться с любым апдейтом 10ки. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 11:17 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
BlackEricПроще программы доработать. Совсем крайний случай. Кто так делает? Обычно - если десяток лет ничего не делал, то и следующий десяток нужно прожить с костылями. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 12:08 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
Михаил ППодскажите, пожалуйста, есть ли бескровное решение этой проблемы?В ярлыке программы в 10-ке можно установить совместимость вплоть до win-95, и из этого работает реально многое. Но, как уже сказали выше, клиент не парсит запросы. А значит, проблема либо в сервере, либо в интерпретации программой "ответов" клиента. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 12:40 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
KreatorXXIBlackEricПроще программы доработать. Совсем крайний случай. Кто так делает? Обычно - если десяток лет ничего не делал, то и следующий десяток нужно прожить с костылями.+ желательно два десятка ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 12:41 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
авторНо, как уже сказали выше, клиент не парсит запросы. А значит, проблема либо в сервере, либо в интерпретации программой "ответов" клиента. Но еще на win7 программа работала с обоими клиентами. Со старым корректно, а с новым сервер ругался на поля. Можно предположить, что старый клиент считает, что база 1 диалекта, а новый - 3(что неверно). Ошибку присылает сервер, который отказывается понимать запрос с зарезервированными словами в качестве полей. Пока не встречаются эти поля - все ОК. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 13:25 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
07.08.2019 13:25, Михаил П пишет: > Со старым корректно, а с новым сервер ругался на поля. без воспроизводимого примера веры этому нет. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 13:30 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
Мимопроходящийбез воспроизводимого примера веры этому нет. Это настолько необычно звучит? :) Зачем мне обманывать? Разница между полноценной работы программы на win7 и вылетанием такой ошибки всего лишь разные версии gds32.dll. С клиентом IntrBase 5 работает, а с относительно свежим клиентом FireBird не очень. При чем, если не лезть на формы с неправильными запросами, то остальная часть работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 13:46 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
07.08.2019 13:46, Михаил П пишет: > С клиентом IntrBase 5 работает ну вот, уже появился InterBase... и есть подозрение, что не клиентом единым... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 13:54 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
Мимопроходящийну вот, уже появился InterBase... Он был в самом вопросе :) Просто факт, то такие же стары программы, работающие через BDE, но не имеющие таблиц с "запрещенными" словами, работают нормально с новыми клиентами и на win10. Проблема что кто-то где-то путает 1 и 3 диалект и вводит в заблуждение сервер. Ну и старый клиент отказался работать на win10 :) Разве такая мелочь может заставить переводить базу с 1 диалекта на 3ый? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 14:06 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
07.08.2019 14:06, Михаил П пишет: > Проблема что кто-то где-то путает 1 и 3 диалект и вводит в заблуждение сервер. проблема скорее всего в том, что чьи-то шаловливые ручки перевели базу с InterBase на Firebird, да ещё и со сменой диалекта. клиент от IB5.X ничего не знает о диалектах, а потому ему плевать на это. но в варианте с клиентом FB, это не канает. давай сюда вывод gstat -h <твоябаза> Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 14:13 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
Database header page information: Flags 0 Checksum 12345 Generation 1348435 Page size 1024 ODS version 10.1 Oldest transaction 1341650 Oldest active 1347200 Oldest snapshot 1346895 Next transaction 1348422 Bumped transaction 1 Sequence number 0 Next attachment ID 0 Implementation ID 16 Shadow count 0 Page buffers 0 Next header page 0 Database dialect 1 Creation date Jul 25, 2017 18:49:59 Attributes force write Variable header data: Sweep interval: 20000 *END* ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 14:28 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
Насколько я понял и помню, gds32 от ib5 понятия не имеет про диалекты и сервер скорее назначает таким коннектам 1-ый диатект. Опять же, насколько я помню, у BDE в св-вая алиаса (или драйвера ?) можно было указать какой диалект использовать. Похоже, что BDE настроен на 3-ий диалект и более новые клиенты (чем от ib5) это послушно передают серверу. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 14:29 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
07.08.2019 14:29, hvlad пишет: > Опять же, насколько я помню, у BDE в св-вая алиаса (или драйвера ?) можно было указать какой диалект использовать. это видимо что-то уж совсем новое. у BDE 5.01 (от Delphi 7) ничего этого нет. там можно "пролезть" через доп.параметры драйвера, но не думаю, что это случай ТС. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 14:38 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
В BDE 3-ий диалект не работает почти никак. Там его через одно место поставить можно, но полной работоспобности это не даст. вроде в HKEY_LOCAL_MACHINE\SOFTWARE\Borland\Database Engine\Settings\Drivers\Intrbase\Db Open\SQLDIALECT ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 15:03 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
Должен же быть механизм сообщить клиенту, что обращаемся к базе с диалектом 1? Тот же самый IBExpert прекрасно общается через клиент FireBird с базой на диалекте 1. Правда делает он это безо всяких BDE. Выходит дело в BDE? автору BDE 5.01 (от Delphi 7) ничего этого нет. там можно "пролезть" через доп.параметры драйвера, но не думаю, что это случай ТС. вот тут стало интересно :) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 15:04 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 15:05 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
07.08.2019 15:05, hvlad пишет: > Мимопроходящий, > http://www.sql.ru/forum/79257/bde-i-dialect-3 ну так а я шо сказал? per aspera ad anum именно этот рецепт. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 15:12 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
При установленном DBE 5.01 этого параметра в реестре не нашел. А этим точно BDE должен заниматься? Ведь на компьютере могут стоять разные программы, которые обращаются к базам с разным диалектом. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 15:26 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
Дело не в BDE. Дело в версии клиента, точнее в версии сетевого протокола, который он использует. Не думаю, что клиенты старше IB5 используют 9-ю версию сетевого протокола. Клиент FB1 уже использует 10-ю версию. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 15:28 |
|
на Win10 не хочет работать со старой gds32.dll
|
|||
---|---|---|---|
#18+
07.08.2019 15:26, Михаил П пишет: > А этим точно BDE должен заниматься? Ведь на компьютере могут стоять разные программы, которые обращаются к базам с разным диалектом. не отвлекайся. и так, вы, ничтоже сумняшеся, перевели базу из-под InterBase на FB1.5 при этом, работать с клиентом от 1.5 вы (по вашим словам) не можете. вопрос: Ы? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2019, 15:32 |
|
|
start [/forum/topic.php?fid=40&msg=39846419&tid=1560615]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
64ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
others: | 270ms |
total: | 438ms |
0 / 0 |