![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
компы в сети? [D7, WinXP]
linox © (2005-12-21 13:55:00)Как просканировать компы в сети и вывести их на форму не в виде текста, а в виде обьектов???
linox (2005-12-26 16:43:00) [1]После праздников буду применять, счас нету времени...
если еще кто что-то подобное знает то пишите буду рад
linox (2005-12-26 16:40:00) [2]2 Se
благодарю!!!!
С наступающими праздниками!!!
Se (2005-12-24 11:52:00) [3]вместо строчки
_FindAllComps(@tnr,ListComps);
надо
FindComps(@tnr);
Se (2005-12-24 08:28:00) [4]function FindComps(xxx:PNetResource):Word;
type
PNRArr = ^TNRArr;
TNRArr = array[0..59] of TNetResource;
var
x: PNRArr;
tnr: TNetResource;
I : integer;
EntrReq,
SizeReq,
twx: THandle;
WSName: string;
CompName:string;
CompAddr:dword;
CompAddres:string;
begin
//
Result:=WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_ANY,RESOURCEUSAGE_CONTAINER, xxx, twx);
if Result=ERROR_NO_NETWORK then Exit;
if Result=NO_ERROR then begin
New(x);
EntrReq:=1;
SizeReq:=SizeOf(TNetResource)*59;
while (twx<>0)and(WNetEnumResource(twx,EntrReq,x,SizeReq)<>ERROR_NO_MORE_ITEMS) do begin
for i:=0 to EntrReq-1 do begin
Move(x^[i], tnr, SizeOf(tnr));
case tnr.dwDisplayType of
RESOURCEDISPLAYTYPE_SERVER: begin
if tnr.lpRemoteName <> '' then WSName:=copy(tnr.lpRemoteName,3,length(tnr.lpRemoteName)-2)
else WSName:=copy(tnr.lpComment ,3,length(tnr.lpComment) -2);
//Добавляем компьютеры в список
//..
end;
else
_FindAllComps(@tnr,ListComps);
end;
end;
end;
Dispose(x);
WNetCloseEnum(twx);
end;
end;
Вызов:
FindComps(nil);
alex_*** (2005-12-23 12:11:00) [5]хорош алгоритм :)
linox (2005-12-23 12:06:00) [6]2 Digitman:
в сети есть окло 25 компов. Мне для управления нужно вывести на форму только 8 из них (для начала).
Я на форме должен вводить нужный ай пи, и должен появлятся комп с введенным ай пи.
mожет есть функция что то вроде getIP?????
Digitman (2005-12-23 11:58:00) [7]
> алгоритм я знаю, я немогу его реализовать средствамиделфи
хорошо.
опиши алгоритм, а по непонятным моментам его кодирования в ObjectPascal подскажем ...
linox (2005-12-23 11:23:00) [8]2 Digitman:
алгоритм я знаю, я немогу его реализовать средствамиделфи (не хватает навыков работы с сетями)
IceBeerg (2005-12-22 16:58:00) [9]linox (22.12.05 16:34) [12]
А а яндексе поискать самому слабо?
Digitman (2005-12-22 16:52:00) [10]пингуй каждый из элементов диапазона адресов для данной подсети с заданной маской.
linox (2005-12-22 16:49:00) [11]2 Digitman:
для начала хотя бы чтобы вывести их ІР.....
Digitman (2005-12-22 16:40:00) [12]
> как просканировать компы???
на предмет получения какой конкретноинформации ?
linox (2005-12-22 16:34:00) [13]подскажите пожалуйста как просканировать компы???
linox (2005-12-22 16:08:00) [14]Удалено модератором
IceBeerg (2005-12-22 13:39:00) [15]Удалено модератором
IceBeerg (2005-12-22 13:38:00) [16]Создает класс, напрмер
TComputer
Объявляеш например массив компров
ComputerArray: array [0..MaxComputer] of TComputer;
И потом выводиш
For ComputerNum=1 to ComputerCount do
ComputerArray[ComputerNum]:=TComputer.Create;
а просканировать как сам думай
Digitman (2005-12-22 12:41:00) [17]
> Через компонент
> роздуплить
клоун
linox (2005-12-22 12:39:00) [18]2 Ботвин Дмитрий:
отключать им клавиатуру, мышь, выключать, завершать сеансы. Через компонент serversocket не могу роздуплить как это сделать?
Anatoly Podgoretsky (2005-12-22 11:10:00) [19]linox (21.12.05 13:55)
Конструктор Create нужного класса.
Ботвин Дмитрий (2005-12-22 11:10:00) [20]linox (22.12.05 11:04) [4]
Заполняешь TTreeView и в качестве пиктограммы узла используешь иконку
компа. А вот фраза правлять ими програмно весьма туманна, что именно то
нужно делать?