Есть идеи?

Groove
Дата: 04.02.2003 09:59:10
Добрый день, господа!
Есть какие нибудь идеи насчет того, как получать список пользователей юзающих аксцесовскую базу в настоящее время?
Я сделал просто до ужаса (просто некогда было мозговать), создал таблицу юзеров
ID

UserLogin (string)
UserName (string)
IsLogon (boolean)
и при загрузке получаю логин, нахожу его в таблице и ставлю IsLogon=true, все работет до тех пор, пока какой нибудь пользователь не сделает снять задачу (сама прога еще ни разу не глючила). После этого поле IsLogin остается истиной, а юзер не активен...
Itsme
Дата: 04.02.2003 10:21:24
procedure GetCurrentUsersList;
const adhcUsers: string = '{947bb102-5d43-11d1-bdbf-00c04fb92675}';
var r: tADODataset;
begin
r:= dm.d_currentusers;
dm.adoc_db1.OpenSchema(siProviderSpecific,emptyparam,adhcUsers,r);
r.Open;
end;

из толстой зеленой книжки "Руководство разработчика Access 2000"
Itsme
Дата: 04.02.2003 10:23:49
Правда, это для тех, кто использует файл рабочей группы и вход пользователей по логину
Unambo
Дата: 04.02.2003 16:27:39
procedure TForm1.FormDestroy(Sender: TObject);
begin
а здесь сделай свой IsLogon:=false

end;
это событие обрабатывается при закрытие формы, даже если снимают задачу через Ctrl+ Alt+Del
Правда если твои юзвери комп рисетят, то тогда это не поможет
StarWind
Дата: 05.02.2003 03:38:54
ну чтоб не ресетили, можно проводки от Reset'а отсоеденить... правда остается еще Power и вилка сетевого штура в силовой розетке...
falcon_k
Дата: 05.02.2003 08:24:20
... Или винда повисла напрочь ...
Aleksei
Дата: 05.02.2003 09:19:23
А если сделать по временной опрос всех юзеров которые подключены, и в случае если он отключен от твоей базы данных сделать соответствующие изменения.

Правда это может немного загрузить сетку.