Форум: "Система";
Текущий архив: 2002.12.23;
Скачать: [xml.tar.bz2];
ВнизТема старая но теперь под 2000/ХП Найти похожие ветки
← →
Alex Bykov (2002-10-10 13:27) [0]Как опребелить кто в данное время подключенк моим расшареным ресурсам.
← →
Армен Тоноян (2002-10-10 18:06) [1]Сталкивался с такой проблемой решение очень протое (если я правильно понял вопрос конечно) Работа идет под любой серверной частью например InterBase! просто создается один табле в котором только два поля одно изкоторых или текстовое и содержит имя клиента или Интеджер равен коду клиента второе поле логическое где True - Client в программе, False - Client-а в программе нет
на событие On creaty main formi Locam становишся на нужного входящего клиента и логической переменной присваиваеш значение True и соответственно на событие Close _ False. Паралельно решаеш проблему доступа двух юзеров под одном логом !
Решение проверенно на програме для управления работой малых и средних IT компаний (автор я сам)
Если есть вопросы мой майл есть !
← →
Alex Bykov (2002-10-18 17:19) [2]Как опребелить кто в данное время подключенк моим расшареным ресурсам. Тоесть кто п в локалке зашел на мой комп и смотрит с меня фильмы и слуает музло :)
← →
Rouse_ (2002-10-20 10:05) [3]Если нужно узнать КТО подключен, значит это сессии
Вот так примерно это делается
type
TSessionInfo10 = packed record
sesi10_cname : PWChar;
sesi10_username : PWChar;
sesi10_time : DWORD;
sesi10_idle_time : DWORD;
end;
PSessionInfo10 = ^TSessionInfo10;
TSessionInfo10Array = array[0..512] of TSessionInfo10;
PSessionInfo10Array = ^TSessionInfo10Array;
var
NetSessionEnumNT : function (servername,UncClientName,username:PWChar;level:DWORD;bufptr:Pointer;prefmaxlen:DWORD;entriesread,totalentries,resume_handle:LPDWORD):DWORD; stdcall;
procedure XXXX
var FLibHandle : THandle;
SessionInfo10 : PSessionInfo10Array;
TotalEntries,EntriesReadNT: DWORD;
i:Integer;
begin
FLibHandle := LoadLibrary("NETAPI32.DLL");
if FLibHandle <> 0 then
try
@NetSessionEnumNT := GetProcAddress(FLibHandle, "NetSessionEnum");
SessionInfo10 := nil;
if NetSessionEnumNT(nil,nil,nil,10,@SessionInfo10,DWORD(-1),@entriesreadNT, @totalentries, nil)=0 then
for i:=0 to EntriesReadNT-1 do
begin
with Form1.ListView3.Items.Add do
begin
Caption := string(SessionInfo10^[i].sesi10_username);
SubItems.Add(SessionInfo10^[i].sesi10_cname);
SubItems.Add(CardinalToStr(SessionInfo10^[i].Sesi10_Time));
SubItems.Add(CardinalToStr(SessionInfo10^[i].sesi10_idle_time));
end;
end;
finally
FreeLibrary(FLibHandle);
end;
end;
Желаю успехов
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2002.12.23;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c