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

Вниз

Аналог NMUDP в Delphi 7   Найти похожие ветки 

 
ki11er   (2004-03-12 14:52) [0]

Подскажите пожалуйста неграмотному, чем заменили NMUDP в 7й версии Delphi?

Спасибо.


 
ki11er   (2004-03-12 14:52) [0]

Подскажите пожалуйста неграмотному, чем заменили NMUDP в 7й версии Delphi?

Спасибо.


 
sniknik ©   (2004-03-12 15:14) [1]

indy TIdUDPServer/TIdUDPClient
можно и NMUDP доставить но вроде за деньги (когда смотрел на из сайте так и было)


 
sniknik ©   (2004-03-12 15:14) [1]

indy TIdUDPServer/TIdUDPClient
можно и NMUDP доставить но вроде за деньги (когда смотрел на из сайте так и было)


 
ki11er   (2004-03-12 15:18) [2]

>indy TIdUDPServer/TIdUDPClient
Я тоже так думал. Но они блин кривые какие-то. Их что, 2 штуки нужно, что б один NMUDP сделать? Я в упор не догоняю.


 
ki11er   (2004-03-12 15:18) [2]

>indy TIdUDPServer/TIdUDPClient
Я тоже так думал. Но они блин кривые какие-то. Их что, 2 штуки нужно, что б один NMUDP сделать? Я в упор не догоняю.


 
Reindeer Moss Eater ©   (2004-03-12 15:21) [3]

Нет, нужно три TIdUDPServer и пять TIdUDPClient
Получается один NMUDP.


 
Reindeer Moss Eater ©   (2004-03-12 15:21) [3]

Нет, нужно три TIdUDPServer и пять TIdUDPClient
Получается один NMUDP.


 
Digitman ©   (2004-03-12 15:38) [4]


> Я в упор не догоняю


вероятно, это - паталогия

что ? не "догоняешь" ?


 
Digitman ©   (2004-03-12 15:38) [4]


> Я в упор не догоняю


вероятно, это - паталогия

что ? не "догоняешь" ?


 
Digitman ©   (2004-03-12 15:39) [5]

Удалено модератором
Примечание: Оффтоп...


 
Digitman ©   (2004-03-12 15:39) [5]

Удалено модератором
Примечание: Оффтоп...


 
Digitman ©   (2004-03-12 15:40) [6]

Удалено модератором
Примечание: Оффтоп...


 
Digitman ©   (2004-03-12 15:40) [6]

Удалено модератором
Примечание: Оффтоп...


 
ki11er   (2004-03-12 15:43) [7]

Удалено модератором
Примечание: Оно тебе надо? ;)


 
ki11er   (2004-03-12 15:43) [7]

Удалено модератором
Примечание: Оно тебе надо? ;)


 
Digitman ©   (2004-03-12 15:53) [8]


> ki11er   (12.03.04 15:43) [7]


тебя-то что моя "болезнь" заботит ?).. ну пивка вчера лишнего дунул) ... с кем не бывает))

давай-ка уж на себя обрати внимание - я тебе контрвопрос в [4] задал, что, мол, тебе непонятно в соотв. компоненте в составе Indy ...  ты же и по сей момент "тормозишь")


 
Digitman ©   (2004-03-12 15:53) [8]


> ki11er   (12.03.04 15:43) [7]


тебя-то что моя "болезнь" заботит ?).. ну пивка вчера лишнего дунул) ... с кем не бывает))

давай-ка уж на себя обрати внимание - я тебе контрвопрос в [4] задал, что, мол, тебе непонятно в соотв. компоненте в составе Indy ...  ты же и по сей момент "тормозишь")


 
Erik ©   (2004-03-12 15:53) [9]

Посмеятся тоже полезно. Разумеется нужен только один компонент TIdUDPServer или TIdUDPClient. Я думаю, что дебе хватит TIdUDPClient. Поверь они очень прямые. У меня невозникло ниодного вопроса при их использовании. Правда я нагло в Help и demo смотрел. :)


 
Erik ©   (2004-03-12 15:53) [9]

Посмеятся тоже полезно. Разумеется нужен только один компонент TIdUDPServer или TIdUDPClient. Я думаю, что дебе хватит TIdUDPClient. Поверь они очень прямые. У меня невозникло ниодного вопроса при их использовании. Правда я нагло в Help и demo смотрел. :)


 
ki11er   (2004-03-12 15:56) [10]

2 Digitman, Erik
>хватит TIdUDPClient

Да, мне его вполне хватит, как только вы расскажете, где у него свойство "OnReceive"


 
ki11er   (2004-03-12 15:56) [10]

2 Digitman, Erik
>хватит TIdUDPClient

Да, мне его вполне хватит, как только вы расскажете, где у него свойство "OnReceive"


 
ki11er   (2004-03-12 15:57) [11]

В смысле Event "OnReceive"


 
ki11er   (2004-03-12 15:57) [11]

В смысле Event "OnReceive"


 
Reindeer Moss Eater ©   (2004-03-12 16:10) [12]

А зачем ему OnReceive, если он блокирующий


 
Reindeer Moss Eater ©   (2004-03-12 16:10) [12]

А зачем ему OnReceive, если он блокирующий


 
Digitman ©   (2004-03-12 16:10) [13]


> ki11er   (12.03.04 15:56) [10]


> где у него свойство "OnReceive"


у него есть св-во-событие OnStatus() ... почитать про это св-во, конечно, не удосужился ? а то ведь - обижайся не обижайся - получается, ищешь не там где лежит, а там где светлей)


 
Digitman ©   (2004-03-12 16:10) [13]


> ki11er   (12.03.04 15:56) [10]


> где у него свойство "OnReceive"


у него есть св-во-событие OnStatus() ... почитать про это св-во, конечно, не удосужился ? а то ведь - обижайся не обижайся - получается, ищешь не там где лежит, а там где светлей)


 
ki11er   (2004-03-12 16:17) [14]

2 Digitman:
Представь себе в первую очередь посмотрел:

Represents the current connection status event handler.
property OnStatus: TIdStatusEvent;

Parameters

aaArgs

Format arguments used to construct the current status text message.

axStatus

The current connection status.

Description

OnStatus is the TIdStatusEvent event handler triggered when the current connection state is changed. OnStatus is triggered by the DoStatus method, which provides the parameters used by the event handler.
axStatus is the TIdStatus value for the current connection.
aaArgs is the optional arguments for the Format function, that will be used to construct the text message that represents the current connection state.


И где здесь хоть вскользь говорится про прием данных?


>  ищешь не там где лежит, а там где светлей

Обрати внимание, как поставлен вопрос. При необходиморсти я могу на голом АПИ все это написать (обычно, ктати так и делаю). Но в данном случае мне нужно быстро и с минимальными переделками скомпилить проект под Delphi 7.


 
ki11er   (2004-03-12 16:17) [14]

2 Digitman:
Представь себе в первую очередь посмотрел:

Represents the current connection status event handler.
property OnStatus: TIdStatusEvent;

Parameters

aaArgs

Format arguments used to construct the current status text message.

axStatus

The current connection status.

Description

OnStatus is the TIdStatusEvent event handler triggered when the current connection state is changed. OnStatus is triggered by the DoStatus method, which provides the parameters used by the event handler.
axStatus is the TIdStatus value for the current connection.
aaArgs is the optional arguments for the Format function, that will be used to construct the text message that represents the current connection state.


И где здесь хоть вскользь говорится про прием данных?


>  ищешь не там где лежит, а там где светлей

Обрати внимание, как поставлен вопрос. При необходиморсти я могу на голом АПИ все это написать (обычно, ктати так и делаю). Но в данном случае мне нужно быстро и с минимальными переделками скомпилить проект под Delphi 7.


 
Reindeer Moss Eater ©   (2004-03-12 16:23) [15]

Писатель на голом API не обративший внимания на то, что библиотека использует блокирующий режим?


 
Reindeer Moss Eater ©   (2004-03-12 16:23) [15]

Писатель на голом API не обративший внимания на то, что библиотека использует блокирующий режим?


 
Digitman ©   (2004-03-12 16:36) [16]


> ki11er


думаю, что я не прав

лихорадочно ищу оправдание себе - ни Д7 ни Инди у меня не установлены ... RME, очевидно, прав - там блок.режим ...

с другой стороны, склонен предположить, что NM-компоненты в Д7 лежат где-то в lib-директории, подобно компонентам TClient/ServerSocket


 
Digitman ©   (2004-03-12 16:36) [16]


> ki11er


думаю, что я не прав

лихорадочно ищу оправдание себе - ни Д7 ни Инди у меня не установлены ... RME, очевидно, прав - там блок.режим ...

с другой стороны, склонен предположить, что NM-компоненты в Д7 лежат где-то в lib-директории, подобно компонентам TClient/ServerSocket


 
ki11er   (2004-03-12 16:39) [17]

>Писатель на голом API не обративший внимания на то, что
>библиотека использует блокирующий режим?
Блин, странные вы люди. Вроде бы понятно вопрос поставил.
Попробую еще раз:
Какой компонент положить на форму вместо NMUDP? И какие свойства этого компонента будут соответствовать свойствам NMUDP?


 
ki11er   (2004-03-12 16:39) [17]

>Писатель на голом API не обративший внимания на то, что
>библиотека использует блокирующий режим?
Блин, странные вы люди. Вроде бы понятно вопрос поставил.
Попробую еще раз:
Какой компонент положить на форму вместо NMUDP? И какие свойства этого компонента будут соответствовать свойствам NMUDP?


 
sniknik ©   (2004-03-12 16:39) [18]

если уж пошла речь о "кривизне" то наоборот с NMUDP один раз "вляпался", пришлось на форуме выяснять что чему (дело о незавершении перезагрузки при работе компанента NMUDP ;о)).

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


 
sniknik ©   (2004-03-12 16:39) [18]

если уж пошла речь о "кривизне" то наоборот с NMUDP один раз "вляпался", пришлось на форуме выяснять что чему (дело о незавершении перезагрузки при работе компанента NMUDP ;о)).

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


 
ki11er   (2004-03-12 16:40) [19]

>думаю, что я не прав
принято


 
ki11er   (2004-03-12 16:40) [19]

>думаю, что я не прав
принято


 
Reindeer Moss Eater ©   (2004-03-12 16:41) [20]

Положи TIdUDPClient.

Свойства Name,Tag,Host,Port у них будет соответсвовать друг другу


 
Reindeer Moss Eater ©   (2004-03-12 16:41) [20]

Положи TIdUDPClient.

Свойства Name,Tag,Host,Port у них будет соответсвовать друг другу


 
ki11er   (2004-03-12 16:41) [21]

2 sniknik:
Я весь внимание...


 
ki11er   (2004-03-12 16:41) [21]

2 sniknik:
Я весь внимание...


 
ki11er   (2004-03-12 16:43) [22]

2 Reindeer Moss Eater:
Я же вроде ясно сказал, что мне нужно OnReceive 8-O


 
ki11er   (2004-03-12 16:43) [22]

2 Reindeer Moss Eater:
Я же вроде ясно сказал, что мне нужно OnReceive 8-O


 
sniknik ©   (2004-03-12 16:43) [23]

> Какой компонент положить на форму вместо NMUDP? И какие свойства этого компонента будут соответствовать свойствам NMUDP?
проще всего, ложи два указаных. (и третий довесок, антифриз ;)
посмотри демо, там потрясные демо, лутше с сайта последние скачай. (с дельфями не последнее идет)


 
sniknik ©   (2004-03-12 16:43) [23]

> Какой компонент положить на форму вместо NMUDP? И какие свойства этого компонента будут соответствовать свойствам NMUDP?
проще всего, ложи два указаных. (и третий довесок, антифриз ;)
посмотри демо, там потрясные демо, лутше с сайта последние скачай. (с дельфями не последнее идет)


 
sniknik ©   (2004-03-12 16:43) [24]

ki11er   (12.03.04 16:41) [21]
и чему внимаеш? ;о)


 
sniknik ©   (2004-03-12 16:43) [24]

ki11er   (12.03.04 16:41) [21]
и чему внимаеш? ;о)


 
ki11er   (2004-03-12 16:45) [25]

Удалено модератором
Примечание: Следи за выражениями...


 
ki11er   (2004-03-12 16:45) [25]

Удалено модератором
Примечание: Следи за выражениями...


 
Reindeer Moss Eater ©   (2004-03-12 16:46) [26]

Я же вроде ясно сказал, что мне нужно OnReceive 8-O

Я не менее яснее сказал что ему оно не надо. Он имеет синхронные методы!


 
Reindeer Moss Eater ©   (2004-03-12 16:46) [26]

Я же вроде ясно сказал, что мне нужно OnReceive 8-O

Я не менее яснее сказал что ему оно не надо. Он имеет синхронные методы!


 
sniknik ©   (2004-03-12 16:46) [27]

> с другой стороны, склонен предположить, что NM-компоненты в Д7 лежат где-то в lib-директории, подобно компонентам TClient/ServerSocket
вряд ли, раз уж платными стали. но конечно может ошибаюсь.


 
sniknik ©   (2004-03-12 16:46) [27]

> с другой стороны, склонен предположить, что NM-компоненты в Д7 лежат где-то в lib-директории, подобно компонентам TClient/ServerSocket
вряд ли, раз уж платными стали. но конечно может ошибаюсь.


 
ki11er   (2004-03-12 16:49) [28]

2 Reindeer Moss Eater:
>Он имеет синхронные методы!
И что из этого? Ты странный товарищ. У меня есть процедура OnReceive и мне нужно ее подцепить к соответствующему ивенту. Причем у меня нет ни малейшего желания запускать доп. потоки.


 
ki11er   (2004-03-12 16:49) [28]

2 Reindeer Moss Eater:
>Он имеет синхронные методы!
И что из этого? Ты странный товарищ. У меня есть процедура OnReceive и мне нужно ее подцепить к соответствующему ивенту. Причем у меня нет ни малейшего желания запускать доп. потоки.


 
ki11er   (2004-03-12 16:50) [29]

2 All:
А на торри я случаем не найду то, что нужно?


 
ki11er   (2004-03-12 16:50) [29]

2 All:
А на торри я случаем не найду то, что нужно?


 
Reindeer Moss Eater ©   (2004-03-12 16:50) [30]

Причем у меня нет ни малейшего желания запускать доп. потоки.

А я тебе их предлагал? Нестранный товарищ?


 
Reindeer Moss Eater ©   (2004-03-12 16:50) [30]

Причем у меня нет ни малейшего желания запускать доп. потоки.

А я тебе их предлагал? Нестранный товарищ?


 
Erik ©   (2004-03-12 16:51) [31]

Есть подозрение, что тебе это надо:

Size := UDPClient.ReceiveBuffer(fConf,SizeOf(fConf), PeerIP, PeerPort, 1000);

Или для сервера:
procedure TRealEvent.UDPServerUDPRead(Sender: TObject; AData: TStream;
 ABinding: TIdSocketHandle);
begin
 Size := AData.Size;
 Case Size of
   SizeOf(Params): AData.Read(Params, Size);
   SizeOf(fConf): AData.Read(fConf, Size);
 else
   AData.Position := AData.Size; //Error Recive packed
   fConf.Code := 0;
   fConf.Content := 255;
   SendConformation(ABinding);
   Exit;
 end;

 Case ABinding.Port of
   IdPORT_ECHO:  Conformation(ABinding);
   WPort:        WorkData(ABinding);
 end;
 Test(ABinding);
end;
Примеры выдрал из рабочего проекта.


 
Erik ©   (2004-03-12 16:51) [31]

Есть подозрение, что тебе это надо:

Size := UDPClient.ReceiveBuffer(fConf,SizeOf(fConf), PeerIP, PeerPort, 1000);

Или для сервера:
procedure TRealEvent.UDPServerUDPRead(Sender: TObject; AData: TStream;
 ABinding: TIdSocketHandle);
begin
 Size := AData.Size;
 Case Size of
   SizeOf(Params): AData.Read(Params, Size);
   SizeOf(fConf): AData.Read(fConf, Size);
 else
   AData.Position := AData.Size; //Error Recive packed
   fConf.Code := 0;
   fConf.Content := 255;
   SendConformation(ABinding);
   Exit;
 end;

 Case ABinding.Port of
   IdPORT_ECHO:  Conformation(ABinding);
   WPort:        WorkData(ABinding);
 end;
 Test(ABinding);
end;
Примеры выдрал из рабочего проекта.


 
sniknik ©   (2004-03-12 16:52) [32]

ki11er   (12.03.04 16:45) [25]
> Из меня тут по этому поводу идиота пытались сделать :(
тебе говорили можно обойтись а не проще. о!, разница
хочеш пользуйся из клиента
TIdUDPClient.ReceiveBuffer()
TIdUDPClient.ReceiveString()


 
sniknik ©   (2004-03-12 16:52) [32]

ki11er   (12.03.04 16:45) [25]
> Из меня тут по этому поводу идиота пытались сделать :(
тебе говорили можно обойтись а не проще. о!, разница
хочеш пользуйся из клиента
TIdUDPClient.ReceiveBuffer()
TIdUDPClient.ReceiveString()


 
sniknik ©   (2004-03-12 16:53) [33]

упс. :( опоздал  >  Erik ©   (12.03.04 16:51) [31]


 
sniknik ©   (2004-03-12 16:53) [33]

упс. :( опоздал  >  Erik ©   (12.03.04 16:51) [31]


 
ki11er   (2004-03-12 16:54) [34]

2 Erik:
мне нужен компонент который был бы =
IdUPDClient + то, что у тебя называется "Или для сервера:", т.е. OnReceive или OnRead или пофигу как он будет называться.


 
ki11er   (2004-03-12 16:54) [34]

2 Erik:
мне нужен компонент который был бы =
IdUPDClient + то, что у тебя называется "Или для сервера:", т.е. OnReceive или OnRead или пофигу как он будет называться.


 
ki11er   (2004-03-12 16:56) [35]

2 sniknik:
Ну вот опять...
Откуда этот ReceiveBuffer(), будет вызываться ?!!!


 
ki11er   (2004-03-12 16:56) [35]

2 sniknik:
Ну вот опять...
Откуда этот ReceiveBuffer(), будет вызываться ?!!!


 
ki11er   (2004-03-12 16:57) [36]

2 Reindeer Moss Eater:
Конструктивных предложений я так понял, не будет?


 
ki11er   (2004-03-12 16:57) [36]

2 Reindeer Moss Eater:
Конструктивных предложений я так понял, не будет?


 
Reindeer Moss Eater ©   (2004-03-12 17:10) [37]

Смысла не вижу давать тебе дальнейшие конструктивные предложения.

Все же напоследок:
"Синхроннный метод" - это когда

var MyData : string;
begin
MyData:=MySyncComponent.ReadMyData();

И нафик никаких там событий не надо этому классу.


 
Reindeer Moss Eater ©   (2004-03-12 17:10) [37]

Смысла не вижу давать тебе дальнейшие конструктивные предложения.

Все же напоследок:
"Синхроннный метод" - это когда

var MyData : string;
begin
MyData:=MySyncComponent.ReadMyData();

И нафик никаких там событий не надо этому классу.


 
sniknik ©   (2004-03-12 17:12) [38]

> Откуда этот ReceiveBuffer(), будет вызываться ?!!!
ну сделай дополнительный поток, раз уж такой противник дополнительных компонент

> Конструктивных предложений я так понял, не будет?
а тебе мало?

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


 
sniknik ©   (2004-03-12 17:12) [38]

> Откуда этот ReceiveBuffer(), будет вызываться ?!!!
ну сделай дополнительный поток, раз уж такой противник дополнительных компонент

> Конструктивных предложений я так понял, не будет?
а тебе мало?

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


 
Digitman ©   (2004-03-12 17:12) [39]


> ki11er


TIdUDPServer - вполне конструктивное предложение

OnUDPRead - фактический аналог OnReceive


 
Digitman ©   (2004-03-12 17:12) [39]


> ki11er


TIdUDPServer - вполне конструктивное предложение

OnUDPRead - фактический аналог OnReceive


 
ki11er   (2004-03-12 17:13) [40]

>"Синхроннный метод" - это когда ...
Серьезно? 8-D

Допиши, какая строчка будет перед
var MyData : string;


 
ki11er   (2004-03-12 17:13) [40]

>"Синхроннный метод" - это когда ...
Серьезно? 8-D

Допиши, какая строчка будет перед
var MyData : string;



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

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

Наверх





Память: 0.64 MB
Время: 0.032 c
1-1082447210
SerSar
2004-04-20 11:46
2004.05.09
Разрыв страницы в Excel


3-1081770754
Урмат
2004-04-12 15:52
2004.05.09
связь между таблицами


14-1082373096
lak
2004-04-19 15:11
2004.05.09
как аналитически доказать- что больше


1-1082617439
sergeii
2004-04-22 11:03
2004.05.09
Funkcija konvertirujushiaja Cifri v slova


9-1071126992
ZAROLF
2003-12-11 10:16
2004.05.09
Помогите с физикой в 2D аркаде !





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский