Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 20.08.2012, 10:53
lestatgi lestatgi вне форума
Прохожий
 
Регистрация: 07.06.2010
Сообщения: 32
Репутация: 10
По умолчанию подключения по сети

Подскажите в каком направлении смотреть. Необходимо когда ко мне подключаются чтобы выдавало сообщение (имя компа подключен) подключение происходит когда заходят к примеру (\\komp) либо отправляют на подключенный принтер. вообщем та информация которая в администрирование>управление компьютером>сеансы.
Очень надо просто некогда не сталкивался. Заранее благодарен.
Ответить с цитированием
  #2  
Старый 20.08.2012, 10:55
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от lestatgi
Подскажите в каком направлении смотреть. Необходимо когда ко мне подключаются чтобы выдавало сообщение (имя компа подключен) подключение происходит когда заходят к примеру (\\komp) либо отправляют на подключенный принтер. вообщем та информация которая в администрирование>управление компьютером>сеансы.
Очень надо просто некогда не сталкивался. Заранее благодарен.
По таймеру вызывай API-функцию NetSessionEnum.
Ответить с цитированием
Этот пользователь сказал Спасибо poli-smen за это полезное сообщение:
lestatgi (20.08.2012)
  #3  
Старый 20.08.2012, 18:34
Аватар для cotseec
cotseec cotseec вне форума
Активный
 
Регистрация: 16.07.2008
Сообщения: 353
Версия Delphi: D7,TDE06,RAD09
Репутация: 1443
По умолчанию

можно еще посмотреть в сторону WSAEventSelect
__________________
Понять, что хочет заказчик - бесценно, ведь он платит MasterCard
Ответить с цитированием
  #4  
Старый 21.08.2012, 12:10
lestatgi lestatgi вне форума
Прохожий
 
Регистрация: 07.06.2010
Сообщения: 32
Репутация: 10
По умолчанию

Уперся в такую проблему в хр выполняю

Код:
Var
NetSessionEnumNT:function(servername,
                        UncClientName,
                        username:PWChar;
                        level:DWORD;
                        bufptr:Pointer;
                        prefmaxlen:DWORD;
                        entriesread,
                        totalentries,
                        resume_handle:LPDWORD):DWORD; stdcall;
и подгружаю
Код:
 FLibHandle := LoadLibrary('NETAPI32.DLL');
все работает
а для windows 7 не могу найти как реализовать. подскажите где поискать или может кто то делал
Ответить с цитированием
  #5  
Старый 21.08.2012, 12:15
lestatgi lestatgi вне форума
Прохожий
 
Регистрация: 07.06.2010
Сообщения: 32
Репутация: 10
По умолчанию

аа все разобрался просто не хватило прав админа.
Ответить с цитированием
  #6  
Старый 21.08.2012, 12:23
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от lestatgi
Код:
Var
NetSessionEnumNT:function(servername,
                        UncClientName,
                        username:PWChar;
                        level:DWORD;
                        bufptr:Pointer;
                        prefmaxlen:DWORD;
                        entriesread,
                        totalentries,
                        resume_handle:LPDWORD):DWORD; stdcall;
Рекомендую другое обявление функции NetSessionEnum:
Код:
type
  NET_API_STATUS = DWORD;

TNetSessionEnum = function (
      ServerName     : WideString;
      UncClientName  : WideString;
      Username       : WideString;
      Level          : DWORD;
      BufPtr         : Pointer;
      PrefMaxLen     : DWORD;
  var EntriesRead    : DWORD;
  var TotalEntries   : DWORD;
  var ResumeHandle   : DWORD): NET_API_STATUS; stdcall;
С таким удобнее работать
Ответить с цитированием
  #7  
Старый 21.08.2012, 12:56
lestatgi lestatgi вне форума
Прохожий
 
Регистрация: 07.06.2010
Сообщения: 32
Репутация: 10
По умолчанию

и еще вопрос в
Код:
var
NetSessionDelNT:function(ServerName,
                        UncClientName,
                        username:PWChar):DWORD; stdcall;
вызываю
Код:
NetSessionDelNT(nil,CNameNT,nil);
CNameNT имя компьютера все работает а как передать чтобы удалить все сессии?
Ответить с цитированием
  #8  
Старый 21.08.2012, 13:14
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от lestatgi
и еще вопрос в
Код:
var
NetSessionDelNT:function(ServerName,
                        UncClientName,
                        username:PWChar):DWORD; stdcall;
вызываю
Код:
NetSessionDelNT(nil,CNameNT,nil);
CNameNT имя компьютера все работает а как передать чтобы удалить все сессии?
Если в параметре UncClientName указать nil, то будут отключены все сессии указанного пользователя.
Если в параметре username указать nil, то будут отключены указанные сессии всех пользователей.

Рекомендую использовать такое объявление функции :
Код:
type
TNetSessionDel = function(
  ServerName    : WideString;
  UncClientName : WideString;
  UserName      : WideString): NET_API_STATUS; stdcall;
Тогда чтобы отключить все сессии всех пользователей просто указываешь пустую строку в параметрах UncClientName и UserName.
Пример:
Код:
  if NetSessionDel ('', '', '') = NO_ERROR then // Отключит все сессиси на локальном компьютере
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 03:35.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter