Головна сторінка
Top.Mail.Ru Яндекс.Метрика
Форум: "Мережі";
Поточний архів: 2002.12.23;
Завантажити: [xml.tar.bz2];

Вниз

Вибачте що питання трохи не в тему UDP Знайти схожі гілки


Romych   (2002-10-24 12:26) [0]

Скиньте будь ласка прімерчік як послати отримати широковещательное повідомлення по мережі з помощю Udp, InDy, ICS а то в форумі по мережах НІХТО не скаже як це дала, а просто критикують може хто знає посилання в Інтернеті на статтю. А то я знайшов посилання де посилаю повідомлення за допомогою АПИ а ловлю UDP але в цьому випадку дуже великі втрати.



:)   (2002-10-24 12:29) [1]

мене це питання тож цікавить ...
допомагайте хто знає че там і куди :)



Romych   (2002-10-24 12:57) [2]

Невже ніхто не посилав в мережу широкомовні повідомлення, допоможіть зробити людині програму для посилки повідомлень по мережі.



Digitman   (2002-10-24 13:04) [3]

>> за допомогою АПИ ... дуже великі втрати

А ти вважаєш, компоненти все ці минаючи WinsockAPI виконують бродкаст?



romych   (2002-10-25 00:59) [4]

Чи не заю, але в конференції по мережах сказали чо таких втрат бути не повинно, і що я роблю не правильно, а як правильно ніхто не сказав :)



Digitman   (2002-10-25 11:29) [5]


> Що я роблю не правильно


А що ти взагалі робиш? Код-то приведи



romych   (2002-10-25 13:06) [6]

Кодом зі мною поділилися :)

unit Unit1;

інтерфейс

використовує
Windows, SysUtils, Forms,
Classes, Controls, Buttons, NMUDP, ExtCtrls, Grids, Dialogs,
StdCtrls, strgrdex, ScktComp, Menus;

procedure TForm1.FormCreate (Sender: TObject);
починати
NMUDP1.LocalPort: = 6767;
end;

procedure TForm1.NMUDP1DataReceived (Sender: TComponent;
NumberBytes: Integer; FromIP: String; Port: Integer);
Кожен
sb: String;
j, i: Integer;
починати
NMUDP1.ReadBuffer (stArr, i);
SB: = StringOfChar ( "", NumberBytes);
For j: = 1 to NumberBytes do sb [j]: = stArr [j];
Memo1.Lines.Add (sb);
Buffer: = Buffer + SB;
end;


procedure TForm1.VykonatyKomandu (s: str4);
було
Init: TWSAData;
SockOpt: BOOL;
Sock: TSocket;
Target: TSockAddrIn;
//
stData, LineMemo, Komu: String;
DataBytes: Word;
i, j, LenStr, KodKom: Word;
KodS: Byte;
починати
WSAStartup ($ 101, Init);
Sock: = Socket (PF_INET, SOCK_DGRAM, IPPROTO_UDP);
SockOpt: = TRUE;
SetSockOpt (Sock, SOL_SOCKET, SO_BROADCAST, PChar (@SockOpt), SizeOf (SockOpt));
//
Target.sin_port: = htons (6767); // номер порту
Target.sin_addr.S_addr: = INADDR_BROADCAST;
Target.sa_family: = AF_INET;
//
stData: = "<" + MyNic + ";" + MyIp + ";" + Komu + ";" + s + ";" + IntToStr (KodKom) + ";>";
//
DataBytes: = Length (stData);
//
for i: = 1 to DataBytes do
починати
stArr [i]: = stData [i];
end;
SendTo (Sock, stArr, DataBytes, 0, Target, SizeOf (Target));
//
WSACleanup;
end;



end.



Digitman   (2002-10-25 13:32) [7]

де аналіз результату, що повертається ф-цією SendTo ()?



romych   (2002-10-25 21:27) [8]

Як його аналізувати?



Wonder   (2002-10-25 21:39) [9]

значення, що повертається
If no error occurs, sendto () returns the total number of characters sent. (Note that this may be less than the number indicated by len.) Otherwise, a value of SOCKET_ERROR is returned, and a specific error code may be retrieved by calling WSAGetLastError ().

Невже так важко подивитися документацію?



Malder   (2002-10-27 13:11) [10]

http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1035216263&n=4



сторінки: 1 вся гілка

Форум: "Мережі";
Поточний архів: 2002.12.23;
Завантажити: [xml.tar.bz2];

Вгору





Пам'ять: 0.58 MB
Час: 0.029 c
1-74655
u96
2002-12-12 22:23
2002.12.23
TOpenPictureDialog


3-74585
Zn
2002-12-04 09:52
2002.12.23
Чи не працює SELECT ... INTO TABLE в ADOQuery


3-74622
newe
2002-12-05 14:28
2002.12.23
Delphi + Access


1-74791
Michael II
2002-12-11 11:40
2002.12.23
Загальні питання


1-74841
don_dampster
2002-12-11 16:37
2002.12.23
unrar.dll





африкаанс албанський арабська вірменин азербайджанець баскський білоруський болгарська каталонський Китайська (спрощене письмо) Китайський традиційний) хорватський чеська данську мову нідерландський Ukranian естонець Філіппінська фінську мову французький
галісійська грузинський німецький грецький гаїтянський креольський давньоєврейську хінді угорський ісландський індонезієць ірландський італійський японський корейський латиська литовець македонець малайський мальтійський норвежець
перс полірування португальська румунський російська сербський словацький словенський іспанська суахілі шведську мову тайський турецька український урду в'єтнамський валлійський ідиш бенгальський боснійський
кебуано есперанто гуджараті хауса хмонг ігбо яванський каннада кхмерская Лао латинь маорі маратхі монгольський непальська панджабі сомалійський тамільська телугу йоруба
зулуський
Англійська Французький Німецький Італійський Португальська Русский Іспанська