Страница 1 из 1

ошибка получения информации SecurityService

Добавлено: 20 мар 2009, 15:39
zdm77
Добрый день.
инструменты:
Delphi 2009, FIBPlus, FireBird 2.1
код:

Код: Выделить всё

 with DataModule_PAY.SecurityService1 do
       begin
          ServerName:='10.7.29.10';
          Params.Clear;
          Params.Add('user_name=SYSDBA');
          Params.Add('password=masterkey');
          Active := True;
       end;
ошибка:
Project payments.exe raised exception class EFIBInterBaseError with message 'DataModule_PAY.SecurityServicel: Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements. @1.

Куда бежать?

Re: ошибка получения информации SecurityService

Добавлено: 20 мар 2009, 15:51
zdm77
если добавить строчку
...

Код: Выделить всё

 Params.Add('sql_role_name=ADMINISTRATOR');
...

ошибка
DataModule_PAY.SecurityService1:
Unsuccessful execution caused by an unavailable resource.Cannot attach to services manager.

Re: ошибка получения информации SecurityService

Добавлено: 20 мар 2009, 22:56
kdv
помочь перевести сообщение об ошибке? это по второму сообщению.
а по первому - похоже, криво установлен клиент ФБ 2.1.

Re: ошибка получения информации SecurityService

Добавлено: 24 мар 2009, 09:37
zdm77
Ответьте пожалуйста на такой вопрос. Есть-ли у кого нибудь возможность проверить связку Delphi2009 FIBPlus и попробовать через SecurityService сделать запрос на получение информации о пользователях (имя и т.д.) На Delphi 2007 все работало(версия FIBPlus тоже соответственно другая), откатиться сейчас проблематично. Нужно выяснить первоисточник проблемы.

Re: ошибка получения информации SecurityService

Добавлено: 24 мар 2009, 10:08
zdm77
К базе коннект нормальный, все запрашивается, редактируется, добавляется, удаляется. А вот запрос на сервис не хочет. Объясните, если не трудно. Что значит криво установленный клиент. Я уже локально поднял БД и через нее пытаюсь. То же самое.

Re: ошибка получения информации SecurityService

Добавлено: 24 мар 2009, 14:00
kdv
только что проверил - D2009, IBX, пример Admin в
Demos\DelphiWin32\VCLWin32\Db\IBX\Admin

подсоединяется к сервисам Firebird 2.1 без проблем (login, как через локальный протокол, так и через tcp).
Попробуйте. Если это работает, значит проблема в FIBPlus.

собственно, если у Вас то же самое приложение, скомпиленное в D2007, тоже работает с 2.1, то проблема
тут явно в FIBPlus. Я могу проверить фибплюс сам, только мне нужен номер версии.

Re: ошибка получения информации SecurityService

Добавлено: 24 мар 2009, 14:11
zdm77
Спасибо. Попробую переустановить. Извините, что вопрос в сторону немного, но по той же теме. По сути мне нужно иметь доступ к информации из системных таблиц о пользователях. Добавлять, удалять юзеров. Возможно это штатными компонентами Delphi?

Re: ошибка получения информации SecurityService

Добавлено: 24 мар 2009, 14:28
zdm77
что-то у меня подозрение что сама Delphi криво стоит... попробовал разместить на форму компонент IBSecurityServaice выскакивает ошибка Access Violation in module "delphicoreide120.bpl" ... ухожу в переустановку.

Re: ошибка получения информации SecurityService

Добавлено: 24 мар 2009, 15:12
kdv
Добавлять, удалять юзеров. Возможно это штатными компонентами Delphi?
закладка компонент InterBase Admin. Собственно, поддержка сервисов впервые была сделана в IBX.
В FIBPlus - позже.
Если эта закладка компонент не видна, то значит delphi не находит gds32.dll. ее надо соорудить при помощи instclient.exe из fbclient.dll.
Возможно, кстати, падение среды с этим тоже связано.

Re: ошибка получения информации SecurityService

Добавлено: 24 мар 2009, 16:14
zdm77
Пожалуйста подскажи поподробней как это соорудить. Действительно IB Admin нет вкладки в компонентах.

Re: ошибка получения информации SecurityService

Добавлено: 24 мар 2009, 16:21
zdm77
сделал
C:\Program Files\Firebird\Firebird_2_1\bin>instclient i f
FBCLIENT.DLL has been installed to the System directory.
не появилась заклада все равно

Re: ошибка получения информации SecurityService

Добавлено: 24 мар 2009, 18:25
kdv
не появилась заклада все равно
дельфю перезапускал? Компоненты Interbase показываются если находится gds32.dll.
Компоненты Interbase Admin показываются, если версия клиента 6.0 или выше. instclient как раз делает из fbclient.dll копию gds32.dll с правильной инфой о версии - 6.3 и т.д.
То есть, если у тебя среда находит где-то старую или кривую gds32.dll, то InterBase Admin и не покажется, потому что он будет считать что клиентская библитека НЕ ПОДДЕРЖИВАЕТ Services API.

Re: ошибка получения информации SecurityService

Добавлено: 24 мар 2009, 18:33
kdv
кстати. у меня в system32 лежит
gds32.dll версии 6.3.2.18116
это точно от FB, но какой версии - не помню.

Re: ошибка получения информации SecurityService

Добавлено: 24 мар 2009, 19:02
hvlad
zdm77 писал(а):сделал
C:\Program Files\Firebird\Firebird_2_1\bin>instclient i f
FBCLIENT.DLL has been installed to the System directory.
не появилась заклада все равно
Тебе gds32 надо.
instclient i g

Re: ошибка получения информации SecurityService

Добавлено: 25 мар 2009, 09:23
zdm77
После танцев с бубном заработало.Изготовил gds32.dll. Останавливаю FireBird, запускаю InterBase. Появляется вкладка IB Admin. Кидаю IBSecurityService, работает. Останвливаю InterBase, запускаю FireBird, Все на месте, работает. FibPlus по прежнему не хочет работать. Тут видимо косяк в компонентах.. с этим попозже тогда буду разбираться.
Всем спасибо.