powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Bug в fbclient
25 сообщений из 135, страница 1 из 6
Bug в fbclient
    #39177313
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый вечер!

Невозможно одновременно произвести загрузку в процесс fbclient от в 2.5 и от в 3.0 embedded.

Код: 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.
program Project1;

{$APPTYPE CONSOLE}

uses
  Windows,
  SysUtils;

const
  isc_dpb_version1               =          1;
  isc_dpb_user_name              =         28;
  isc_dpb_password               =         29;

type
  TISC_DB_HANDLE       = PVoid;
  PISC_DB_HANDLE       = ^TISC_DB_HANDLE;
  ISC_STATUS           = LongInt; // 32 bit signed
  PISC_STATUS          = ^ISC_STATUS;
  Tisc_attach_database = function (status_vector            : PISC_STATUS;
                                   db_name_length           : Short;
                                   db_name                  : PAnsiChar;
                                   db_handle                : PISC_DB_HANDLE;
                                   parm_buffer_length	      : Short;
                                   parm_buffer              : PAnsiChar): ISC_STATUS; stdcall;

var
  ADataBase1,
  ADataBase2: TISC_DB_HANDLE;

function AttachDatabase(const ALibName: String; const AName, AUserName, AUserPassword: AnsiString): TISC_DB_HANDLE;
var
  AHandle: HMODULE;
  Aisc_attach_database: Tisc_attach_database;
  AStatus: PISC_STATUS;
  AErrCode: ISC_STATUS;
  dbp: AnsiString;
begin
  Result := nil;
  AHandle := LoadLibrary(PChar(ALibName));
  if not(AHandle > HINSTANCE_ERROR) then
    Exit;
  Aisc_attach_database := GetProcAddress(AHandle, 'isc_attach_database');
  if not Assigned(Aisc_attach_database) then
    RaiseLastOSError;
  dbp := AnsiChar(isc_dpb_version1);
  dbp := dbp + AnsiChar(isc_dpb_user_name);
  dbp := dbp + AnsiChar(Length(AUserName));
  dbp := dbp + AUserName;
  dbp := dbp + AnsiChar(isc_dpb_password);
  dbp := dbp + AnsiChar(Length(AUserPassword));
  dbp := dbp + AUserPassword;
  AErrCode := Aisc_attach_database(@AStatus, Length(AName), PAnsiChar(AName), @Result, Length(dbp), PAnsiChar(dbp));
  if AErrCode <> 0 then
    Result := nil;
  WriteLn(AErrCode);
end;

begin
  try
    ADataBase1 := AttachDatabase('C:\Program Files (x86)\FB25\fbclient.dll', '192.168.1.12:C:\Cashs2\DB\cashs.FDB', 'SYSDBA', 'masterkey');
    ADataBase2 := AttachDatabase('C:\Cashs2.FB3\fbclient.dll', 'C:\Cashs2.FB3\DB\cashs.FDB', 'SYSDBA', 'masterkey');
    ReadLn;
  except
    on E: Exception do
      WriteLn(E.ClassName, ': ', E.Message);
  end;
end.



Происходит ошибка 335545004 и приложение валится с AccessViolation. Данное поведение зафискировано и в IBExpert. Что я делаю не так?

PS. FB 2.5 - FireBird 2.5.5.26952 ClassicServer
FB3.0 - FB 3.0 RC1 Embedded
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177315
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тема с IBExpert тут
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177324
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
__Avenger__,

только что скачал FB 3.0 снапшот, создал базу, указав локальное подключение.
Получилось.
После этого, не выполняя дисконнекта, подконнектился к удаленному серверу FB 2.0, используя клиента от fb 2.5.
Использовал свежескачанный IBExpert.

Все работает.
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177325
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужна обратная последовательность. Сначала FB2.5, потом 3.0 embedded.
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177327
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
__Avenger__Нужна обратная последовательность. Сначала FB2.5, потом 3.0 embedded.

И обратно все равно работает. Правда, клиент fb2.5 у меня embedded. Но коннект к серверу "удаленный".
...

Может, я что напутал. Э... чтобы fb 3.0 клиент стал embedded, нужно лишь "локальный" коннект указывать, так?
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177328
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД__Avenger__Нужна обратная последовательность. Сначала FB2.5, потом 3.0 embedded.

И обратно все равно работает. Правда, клиент fb2.5 у меня embedded. Но коннект к серверу "удаленный".
...

Может, я что напутал. Э... чтобы fb 3.0 клиент стал embedded, нужно лишь "локальный" коннект указывать, так?

Проверил с клиентом Embedded 2.5 - у меня тоже ок. Попробуй клиента не от embedded.
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177329
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДМожет, я что напутал. Э... чтобы fb 3.0 клиент стал embedded, нужно лишь "локальный" коннект указывать, так?

У меня в конфиге firebird.conf прописано это:
Код: sql
1.
2.
ServerMode = Classic
Providers = Engine12
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177330
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
__Avenger__Происходит ошибка 335545004Это isc_pman_cannot_load_plugin.
Там обычно есть ещё вторичные коды ошибки

__Avenger__приложение валится с AccessViolation. Данное поведение зафискировано и в IBExpert.IBE тоже падает ?

Текущий снапшот пробовал ?
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177332
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad,

IBE не падает. С последним снапшотом все аналогично.
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177333
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladТам обычно есть ещё вторичные коды ошибки

С помощью какой API функции их посмотреть?
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177335
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
__Avenger__чччДМожет, я что напутал. Э... чтобы fb 3.0 клиент стал embedded, нужно лишь "локальный" коннект указывать, так?

У меня в конфиге firebird.conf прописано это:
Код: sql
1.
2.
ServerMode = Classic
Providers = Engine12


Прописал то же самое в firebird.conf. Переконнектился. Работает без ошибок.
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177336
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД__Avenger__пропущено...


У меня в конфиге firebird.conf прописано это:
Код: sql
1.
2.
ServerMode = Classic
Providers = Engine12


Прописал то же самое в firebird.conf. Переконнектился. Работает без ошибок.

Клиента сменил от fb2.5 на неembedded?
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177337
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
__Avenger__чччДпропущено...

Прописал то же самое в firebird.conf. Переконнектился. Работает без ошибок.

Клиента сменил от fb2.5 на неembedded?
Пять минут.
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177338
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
__Avenger__hvladТам обычно есть ещё вторичные коды ошибки

С помощью какой API функции их посмотреть?fb_interpret (или, старая небезопасная isc_interprete)

В C:\Cashs2.FB3\ есть остальные файлы от fb3 ?
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177339
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad,

Да, полностью распакованный дистрибутив.

Проверил свежий дистрибутив IBE:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Error Message:
----------------------------------------
Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements.
Error loading plugin Engine12.
Module D:\1\Firebird-3.0.0.32349-0_Win32\plugins/Engine12 exists but can not be loaded.


[0054511E] FIB.IBError (Line 533, "FIB.pas" + 55) + $2
[00541201] FIBDatabase.TFIBDatabase.Open (Line 936, "FIBDatabase.pas" + 50) + $5
[00517717] pFIBDatabase.TpFIBDatabase.Open (Line 297, "pFIBDatabase.pas" + 9) + $2
[00541497] FIBDatabase.TFIBDatabase.SetConnected (Line 999, "FIBDatabase.pas" + 3) + $2
[01052CC2] IBEDatabases.TIBEDatabase.Connect (Line 3095, "IBEDatabases.pas" + 3) + $10
[00FEDD39] InspectorFm.TInspectorFrame.OpenDatabase (Line 3518, "Frames\InspectorFm.pas" + 49) + $D
[00FE8B7E] InspectorFm.TInspectorFrame.ObjectsTLDblClick (Line 1481, "Frames\InspectorFm.pas" + 11) + $A
[00455281] Controls.TControl.DoMouseDown (Line 4306, "Controls.pas" + 2) + $21
[0045533D] Controls.TControl.WMLButtonDblClk (Line 4331, "Controls.pas" + 5) + $C
[00444044] Forms.StdWndProc (Line 1459, "Forms.pas" + 8) + $0
[0044D853] Forms.TApplication.ProcessMessage (Line 6630, "Forms.pas" + 13) + $1
[01094F90] IBExpert.IBExpert (Line 1390, "D:\Projects_5\IBExpert\IBExpert.dpr" + 594) + $7
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177340
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД__Avenger__пропущено...


Клиента сменил от fb2.5 на неembedded?
Пять минут.
Сменил. Скачал свежий снапшот.

Последовательно:

1. Коннект к удаленному FB 2.0 через fbclient.dll от FB 2.5 - ОК.

2. Коннект (локальный) к локальной базе FB 3.0 ч/з fbclient.cdll от FB 3.0 - ошибка:
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177341
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДчччДпропущено...

Пять минут.
Сменил. Скачал свежий снапшот.

Последовательно:

1. Коннект к удаленному FB 2.0 через fbclient.dll от FB 2.5 - ОК.

2. Коннект (локальный) к локальной базе FB 3.0 ч/з fbclient.cdll от FB 3.0 - ошибка:
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177342
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ха.

Выполнил дисконнект, снова коннекты. Ошибка пропала. :)
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177344
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если fb 2.5 клиент - "embed", то ошибки нет.
...
Ну, у меня "не-embed" клиенты не используются.
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177345
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
О, Господи...
На последнем снапшоте (2.5.6.26975) FB 2.5. при дисконнекте с embed - клиентом "зависает", а потом "падает" IBExpert.

Вернулся на старого клиента (2.5.2.26540). Все хорошо.
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177346
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Воспроизвёл.

В момент загрузки engine12.dll загрузчик выдаёт ошибку "Entry Point Not Found"
Судя по всему, загрузчик пытается связать engine12.dll с fbclient.dll от v2.5, а не от v3
Непосредственно влиять на это мы не можем, так что придётся пользоваться какой-то одной клиентской библиотекой, благо это возможно.
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177347
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladпридётся пользоваться какой-то одной клиентской библиотекойИли переименовать клиента от 2.5, если уж так сильно хочется
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177348
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДНа последнем снапшоте (2.5.6.26975) FB 2.5. при дисконнекте с embed - клиентом "зависает", а потом "падает" IBExpert.А вот с этим я сегодня уже не буду разбираться, постараюсь завтра
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177349
__Avenger__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad,

Я пробовал переименовать fbclient от fb3, все равно ошибка остается.

Это очень плохо для тех, кто юзает IBExpert совместно с IBExpert User Database.
...
Рейтинг: 0 / 0
Bug в fbclient
    #39177352
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
__Avenger__Я пробовал переименовать fbclient от fb3, все равно ошибка остается.Потому что нужно переименовать клиента от 2.5

__Avenger__Это очень плохо для тех, кто юзает IBExpert совместно с IBExpert User Database.Я им постоянно пользуюсь и до сегодняшнего дня не испытывал проблем.
И завтра тоже не буду испытывать.
Не нужно частные проблемы выносить на общемировой уровень.
...
Рейтинг: 0 / 0
25 сообщений из 135, страница 1 из 6
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Bug в fbclient
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]