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

Вниз

можно ли получить список пользователей работающих в базе Paradox   Найти похожие ветки 

 
OlegKrt   (2002-10-30 08:54) [0]

можно ли получить список пользователей работающих с базой Paradox
или хотя бы узнать подключен ли кто-нибудь к базе


 
Reindeer Moss Eater   (2002-10-30 09:01) [1]

Если этот список есть, то его получить можно


 
REP   (2002-10-30 09:18) [2]

Чтобы узнать подключен ли кто-нибудь к базе попробуй использовать свойство TTable.Exclusive:

Try
..
Table1.Exclusive:=True;
Table1.Exclusive:=False;
..
Except
//Кто-то подключился!!!
end;


 
Bis ©   (2002-10-30 09:28) [3]

все это хранится в специальном файле PDOXUSRS.NET
Если он заблокирован (нельзя удалить), то значит есть подключения. И вполне могут быть повисшие соединения, так что не факт, что эксклюзивное открытие дает факт того, что кто-то работает в данный момент


 
sky3d ©   (2002-10-30 09:48) [4]

Когда то получал список пользователей, которые держат таблицу на случай что б знать кого отцеплять.

Основная идея вот в таком разрезе приблизительно:

procedure TForm1.GetLockInfo;
var
TmpCursor: hdbicur;
Lock: LOCKDesc;
rslt: dbiResult;
ListItem: TListItem;

begin

Session.Close;
Session.Open;
with Table do
try
DatabaseName := FDatabaseName;
TableName := FTableName;
Open;
except
Exit;
end;

Check(DbiOpenLockList(Table.handle, True, True, TmpCursor));
Check(DbiSetToBegin(TmpCursor));
ListView.Items.Clear;
repeat
rslt:= DbiGetNextRecord(TmpCursor, dbiNOLOCK, @Lock, nil);
if (rslt <> DBIERR_EOF) then
begin
ListItem := ListView.Items.Add;
ListItem.Caption := inttostr(Lock.iType);
ListItem.SubItems.Add(StrPas(Lock.szUserName));
ListItem.SubItems.Add(InttoStr(Lock.iNetSession));
ListItem.SubItems.Add(InttoStr(Lock.iSession));
ListItem.SubItems.Add(InttoStr(Lock.iRecNum));
end;
until rslt <> DBIERR_NONE;
Check(DbiCloseCursor(TmpCursor));
end;


 
Reindeer Moss Eater   (2002-10-30 10:24) [5]

А я взял и открыл файл таблицы c помощью Notepad.exe


 
OlegKrt   (2002-10-30 10:30) [6]

а можно ли получить имя машины, с которой подключен пользователь?
И если кто-то открыл файл монопольно можно ли узнать кто?


 
Avsam ©   (2002-10-30 16:19) [7]

> А я взял и открыл файл таблицы c помощью Notepad.exe

notepad.exe загружает в себя файл, не лочя его. То есть файл даже удалить можно.

Лучше всего в программе сделать, что при запуске пользователь регистриться в специально отведенной таблице, а при выходе - запись удаляется.
Туда же можно писать и имя машины, время и т.д.



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

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

Наверх




Память: 0.48 MB
Время: 0.018 c
1-59239
TTCustomDelphiMaster
2002-11-06 14:45
2002.11.18
Пользовательские сообщения


14-59332
DiamondShark
2002-10-31 17:08
2002.11.18
Да здравствуют наши программисты!


3-59053
ton2
2002-10-29 12:35
2002.11.18
Поиск с позиционированием


14-59387
Snake2000
2002-10-30 13:00
2002.11.18
Помогите с видеокартами


7-59459
Krot
2002-09-19 22:07
2002.11.18
Добавление вкладки