Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.02;
Скачать: CL | DM;

Вниз

Как получить список всех зарегистрированных пользователей?   Найти похожие ветки 

 
Dens   (2003-09-13 16:58) [0]

Мастера, подскажите пожалуйста.

На сервере зарегистрировано несколько пользователей.
Перед входом в программу нужно выдавать запрос на имя ползователя и пароль.
Так вот, каким образом можно получить список всех этих пользователей. Есть какой-либо способ, кроме как коннектиться напрямую к isc4.gdb?


 
Zacho ©   (2003-09-13 17:02) [1]

Есть. Хранить список пользователей в каком-нибудь файле.


 
Dens   (2003-09-13 17:07) [2]

> Хранить список пользователей в каком-нибудь файле
Тогда это почти тоже самое, что и isc4.gdb.
Но тогда при каждом обновлении списка пользователей в isc4.gdb придется делать те же изменения и в этом файле.


 
Zacho ©   (2003-09-13 17:14) [3]


> Dens (13.09.03 17:07) [2]

Естественно. А так ли уж вообще нужно получать этот список ? Может просто, пусть пользователь сам вводит свое имя ?


 
Dens   (2003-09-13 17:30) [4]

Оно то конечно можно, но удобнее выбрать из списка.
А то глупый юзер как-нибудь не так введет.

Если уж нет другого способа, то пусть тогда юзер сам вводит.
Я ж спросил на всякий случай, может как-нибудь и можно.

Если по другому нельзя, тогда можно ли как нибудь по имени сервера узнать путь к isc4.gdb.
Я пробовал копаться в реестре.
На локальной машине вроде бы нашел путь к каталогу, в котой установлен IB:
HKEY_LOCAL_MACHINE\SOFTWARE\InterBase Corp\InterBase\CurrentVersion
и в строке RootDirectory - путь к каталогу.

Но это на локальной машине.
А как это узнать на сервере?


 
Zacho ©   (2003-09-13 17:42) [5]


> Dens (13.09.03 17:30) [4]
> А как это узнать на сервере?

На сколько я знаю - в общем случае никак. И я бы посоветовал все-же отдельный файл со списком, хотя бы потому, что на сервере может быть несколько БД, а зачем тебе в списке пользователи, не имеющие к твоей БД никакого отношения ?


 
Dens   (2003-09-13 17:49) [6]

Ну что ж. Нет так нет.
Спасибо и на этом.


 
DrPass ©   (2003-09-14 00:08) [7]

Вообще-то сервер IB предоставляет специальный API, с помощью которого можно получить список всех юзеров (так же, как это делает IBConsole). Ну а проще всего воспользоваться компонентой IBSecurityService (палитра Interbase Admin), которая через этот API может дать тебе список юзеров


 
Zacho ©   (2003-09-14 00:17) [8]


> DrPass © (14.09.03 00:08) [7]

Не во всех версиях IB есть ServicesAPI. А даже если есть, ну и толку то для данной задачи ?


 
[NIKEL] ©   (2003-09-14 01:58) [9]

Zacho © (14.09.03 00:17) [8]
Не во всех версиях IB есть ServicesAPI. А даже если есть, ну и толку то для данной задачи ?


толк есть.

надо просто подключиться к isc4.gdb и все.
стандартные функции, если я не ошибаюсь, не предоставляют информации о пользователях. Там есть функции добавления, удаления и модификации пользователей.

Подключился к isc4.gdb и получил список
SELECT DISTINCT USER_NAME, FIRST_NAME, MIDDLE_NAME, LAST_NAME, " +
"FULL_NAME, GROUP_NAME, SYS_USER_NAME, UID, GID, COMMENT " +
"FROM USERS ORDER BY USER_NAME


и все


 
Zacho ©   (2003-09-14 02:04) [10]


> [NIKEL] © (14.09.03 01:58) [9]

Не.. Нету.

> Dens (13.09.03 16:58)
> Есть какой-либо способ, кроме как коннектиться напрямую
> к isc4.gdb?

И еще:

> Zacho © (13.09.03 17:42) [5]
>на сервере может быть несколько БД, а зачем тебе в списке пользователи,
> не имеющие к твоей БД никакого отношения ?


 
Filat ©   (2003-09-14 13:54) [11]

Тааааааааааааааакккккк .........., надо попробовать, сенк да интересные мысли.



Страницы: 1 вся ветка

Текущий архив: 2003.10.02;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.015 c
1-3966
Unknown
2003-09-20 10:42
2003.10.02
функция format


3-3715
Vadim
2003-09-13 19:29
2003.10.02
Что вместо BDE?


1-3845
Pre_AlFa
2003-09-19 09:09
2003.10.02
Перевод C++ исходников на Delphi


1-3957
Virus.ex
2003-09-20 13:46
2003.10.02
обработчики.......


1-3888
Элл
2003-09-18 15:18
2003.10.02
Контекстное меню windows