Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2006.10.08;
Скачать: [xml.tar.bz2];

Вниз

Компы в сети   Найти похожие ветки 

 
Dstr ©   (2006-05-14 21:14) [0]

Подскажите,как у знать все компы в сети(или хотябы в рабочей группе),у меня есть несколько способов(Пока все были все нерабочие)WNetEnumResource возвращает ошибку.


 
MetalFan ©   (2006-05-15 13:27) [1]

http://delphimaster.net/view/6-1147666748/

и какую же ошибку он тебе возвращает? пример неработающего кода?


 
Dstr ©   (2006-05-15 16:48) [2]

unit FindComp;

interface

uses
 Windows, Classes;

function FindComputers: DWORD;

var
 Computers: TStringList;

implementation

uses
 SysUtils;

const
 MaxEntries = 250;

function FindComputers: DWORD;

var
 EnumWorkGroupHandle, EnumComputerHandle: THandle;
 EnumError: DWORD;
 Network: TNetResource;
 WorkGroupEntries, ComputerEntries: DWORD;
 EnumWorkGroupBuffer, EnumComputerBuffer: array[1..MaxEntries] of TNetResource;
 EnumBufferLength: DWORD;
 I, J: DWORD;

begin

 Computers.Clear;

 FillChar(Network, SizeOf(Network), 0);
 with Network do
 begin
   dwScope := RESOURCE_GLOBALNET;
   dwType := RESOURCETYPE_ANY;
   dwUsage := RESOURCEUSAGE_CONTAINER;
 end;

 EnumError := WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_ANY, 0, @Network,
   EnumWorkGroupHandle);

 if EnumError = NO_ERROR then
 begin
   WorkGroupEntries := MaxEntries;
   EnumBufferLength := SizeOf(EnumWorkGroupBuffer);
   EnumError := WNetEnumResource(EnumWorkGroupHandle, WorkGroupEntries,
     @EnumWorkGroupBuffer, EnumBufferLength);

   if EnumError = NO_ERROR then
   begin
     for I := 1 to WorkGroupEntries do
     begin
       EnumError := WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_ANY, 0,
         @EnumWorkGroupBuffer[I], EnumComputerHandle);
       if EnumError = NO_ERROR then
       begin
         ComputerEntries := MaxEntries;
         EnumBufferLength := SizeOf(EnumComputerBuffer);
         EnumError := WNetEnumResource(EnumComputerHandle, ComputerEntries,
           @EnumComputerBuffer, EnumBufferLength);
         if EnumError = NO_ERROR then   //а сдесь собственно ошибка, вроде 59
           for J := 1 to ComputerEntries do
             Computers.Add(Copy(EnumComputerBuffer[J].lpRemoteName, 3,
               Length(EnumComputerBuffer[J].lpRemoteName) - 2));
         WNetCloseEnum(EnumComputerHandle);
       end;
     end;
   end;
   WNetCloseEnum(EnumWorkGroupHandle);
 end;

 if EnumError = ERROR_NO_MORE_ITEMS then
   EnumError := NO_ERROR;
 Result := EnumError;

end;

initialization

 Computers := TStringList.Create;

finalization

 Computers.Free;

end.


 
Dstr ©   (2006-05-15 16:53) [3]

Слушайте,мне собственно надо послать шировещательную рассылку,но я пользуюсь ИндиUDP и если в Хост я напишу 255.255.255.255,то вылезает ошибка,если оставлю пустым,мессага приходит только мне.
Я написал алгоритм посылки мессаги из TStringList мне остается токо его напичкать IP шниками,дайте совет пожалуйста,чего мне делать?



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

Форум: "Сети";
Текущий архив: 2006.10.08;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.036 c
15-1158563005
VitV
2006-09-18 11:03
2006.10.08
Название компонента


2-1158845235
Пгуые
2006-09-21 17:27
2006.10.08
Может быть есть аналог mod для Extended?


1-1156366214
Dreamse
2006-08-24 00:50
2006.10.08
Как обрезать картинку ?


2-1158139691
Crazy monkey
2006-09-13 13:28
2006.10.08
Скрыть закладки в tpagecontrol


15-1158519090
ProgRAMmer Dimonych
2006-09-17 22:51
2006.10.08
Расскажите, как разместить свою веб-страницу в интернете, ...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский