Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Delphi

Выпуск № 748
от 12.03.2007, 23:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 434, Экспертов: 49
В номере:Вопросов: 1, Ответов: 2


Вопрос № 77433: Здравствуйте, уважаемые эксперты. Имеется локальная сеть. Как получить список компьютеров и их IP, которые подключены в данный момент?...

Вопрос № 77.433
Здравствуйте, уважаемые эксперты. Имеется локальная сеть. Как получить список компьютеров и их IP, которые подключены в данный момент?
Отправлен: 07.03.2007, 23:05
Вопрос задал: Bingo (статус: 1-ый класс)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Gh0stik
Здравствуйте, Bingo!

Обратимся к помощи великого DelphiWorld, на этом портале я Вам просто советую прочитать такие статьи:

Выводит список компьютеров в локальной сети
Как узнать IP машины по имени.

Параллельно можете просмотреть полностью раздел
Интернет и Сети


Good Luck!!!

---------
Господь Бог - это всего лишь сверхмощный генератор случайных чисел, в соответствии с которыми сочетаются события на Земле. Генератор случайных чисел - и только.
Ответ отправил: Gh0stik (статус: Профессионал)
Украина, Славянск
Организация: Славянский государственный педагогический университет (Кафедра алгебры)
ICQ: 289363162
----
Ответ отправлен: 07.03.2007, 23:33
Оценка за ответ: 5
Комментарий оценки:
Гениально!!!

Отвечает: Zolton007
Здравствуйте, Bingo!
Вот код. Может поможет =)
Как найти все компьютеры в рабочей группе
--------------------------------------------------------------------------------
var
Computer: array [1..500] of string[25];
ComputerCount: Integer;
procedure FindAllComputers(Workgroup: string);
var
EnumHandle: THandle;
WorkgroupRS: TNetResource;
Buf: array [1..500] of TNetResource;
BufSize: Integer;
Entries: Integer;
Result: Integer;
begin
ComputerCount := 0;
Workgroup := Workgroup + #0;
FillChar(WorkgroupRS, SizeOf(WorkgroupRS) , 0);
with WorkgroupRS do
begin
dwScope := 2;
dwType := 3;
dwDisplayType := 1;
dwUsage := 2;
lpRemoteName := @Workgroup[1];
end;
WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_ANY, 0, @WorkgroupRS, EnumHandle);
repeat
Entries := 1;
BufSize := SizeOf(Buf);
Result := WNetEnumResource(EnumHandle, Entries, @Buf, BufSize);
if (Result = NO_ERROR) and (Entries = 1) then
begin
Inc( ComputerCount );
Computer[ ComputerCount ] := StrPas(Buf[1].lpRemoteName);
end;
until
(Entries <> 1) or (Result <> NO_ERROR);
WNetCloseEnum( EnumHandle );
end;

[http://delphiworld.narod.ru]

---------
Если твоя программа выполняет мистические действия, - значит ты сделал что-то невероятно тупое!
Ответ отправил: Zolton007 (статус: 4-ый класс)
Ответ отправлен: 08.03.2007, 20:03
Оценка за ответ: 5
Комментарий оценки:
Cпасибо. Тоже пойдет.


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

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

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
ООО "Мастер-Эксперт Про", Москва, 2007
Авторские права | Реклама на портале
Версия системы: 4.45 beta от 20.02.2007
Яндекс Rambler's Top100

В избранное