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

Вниз

UDP и всё такое   Найти похожие ветки 

 
Shadow HuntEr ©   (2004-09-17 11:33) [0]

Скажите честно, вообще кто-либо работал с UDP и TCP/IP в КОЛе. У меня наверное Очень кривые руки, так как ничего не получилось... Возможны ли какие-то решения именно в КОЛе, даже уже написанные...


 
Аид   (2004-09-17 14:44) [1]

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


 
Аид   (2004-09-30 20:12) [2]

Написал UDP... малость только наверно кривой, но основные концепции присутствуют... если надо - могу кинуть...


 
Gandalf ©   (2004-10-08 21:30) [3]

Давай все сгодиться.


 
Аид   (2004-11-19 21:15) [4]

Привет Gandalf, отсылаю UDP. он работает, но не все ошибки обработаны, да и незнаю как отдельную функцию получения пакета запихать внутрь объекта. Если кто поможет довести его до ума - буду признателен.

Кто заинтересован в компоненте UDP под КОЛ - пишите, может вместе доведем его до ума.


 
Gandalf ©   (2004-11-24 11:05) [5]

Ловлю. Пока не пришло.

ЗЫ: Кто заинтересован в ICS просьба тоже писать ;)


 
Аид   (2004-11-24 21:43) [6]

mailto:Gandalf@nekki.ru отправил на это мыло дня 4 назад... странно...


 
Gandalf ©   (2004-11-25 21:33) [7]

Не-не - не пришло :(
Сюда пробуй.
zharov_dv@zelnet.ru


 
Аид   (2004-12-04 22:38) [8]

отправил. лови.


 
admdenis   (2004-12-06 04:04) [9]

Аид а скинь и мне плиз. admdenis@yandex.ru Заранее спасибо!


 
Gandalf ©   (2004-12-07 23:34) [10]

Положил + ATL + KOLICS Новый:
Много фиксов, httpserver, ftpserver, обработка ошибок и т.п.


 
CSS   (2004-12-08 00:01) [11]

2Gandalf а откуда качать новый KOLICS?
а то http://kol.mastak.ru/ мертвый.


 
Gandalf ©   (2004-12-08 10:21) [12]

Я заказал домен KOLnMCK.ru сайт теперь будет там - как выдадут.

Сейчас се скачать можно с ftp

ftp://kol:kol@80.92.100.21/


 
Аид   (2004-12-14 11:16) [13]

Кстати... нашел библиотеку сетевую...
ClientUDP
ServerUDP
ClientTCP
ServerTCP
пустое окно + библиотека - размер файла 84Кб <- это много или нормально? там остается Classes - заменой стандартной библеотеки на КОЛовскую - можно уменьшить размер?


 
Gandalf ©   (2004-12-14 22:00) [14]

KOLICS дает гдето столько же - но он пока сыроват. Хотя думаю сильно мне махину уменьшить не удастца. Замена Classes тебе поможет.


 
Gandalf ©   (2004-12-15 17:14) [15]

KOLICS 0.8
[*] WebServer - теперь пашет :)
Плюс фиксы - ICMP,FTPServ,Ping...

Портинг почитай подходит к концу :В


 
Аид   (2004-12-15 18:46) [16]

2 Gandalf:
она весит из-за привязки Classes и SysUtils... там ещё использовалась Forms, но она убралась почти безболезненно... вопрос возник другой: нет прог автоматом переводящих классы в объекты? TClass в TObj т.е. формат КОЛ?


 
Gandalf ©   (2004-12-16 09:36) [17]

1) Про SysUtils и Classes знаю - просто не успел выдрать еще - но поскольку осталось не протестированным 2 модуля - то этот час близок.
2) Хорошего ничего нет, у каждого есть чтото свое. Мой вариант был сделан изначально глупо - и потому я его не развиваю - он немного упрощает конверт - хотя к его багам надо привыкать - а делать новый нет сил. У меня больших портов не так много осталось - ща TVZip ну и там по мелочам. Я все продвигаю KOL в оффициальный суппорт - например KOLICS/ICS cxCPU/KOLcxCPU - хотя пока не особо получаеться.


 
Аид   (2004-12-19 12:32) [18]

возник вопрос в переводе с Classes на TObj -
есть код вида:
procedure TCustomWSocket.SocketError(Error: integer);
begin
 FLastError:= Error;
 if Assigned(FOnError) then
   АOnError(Self, FLastError, LastErrorDesc);
end;

это метод в в классе. при переделывании класса в объект (class(TComponent) в object(TObj)) ругается на Self... OnError описывается:
TOnError = procedure(Sender: TObject; Error: integer; Msg: string) of object;

Каким макаром можно избавиться от Self?


 
Владимир Кладов   (2004-12-19 13:31) [19]

@ Self


 
Аид   (2004-12-19 20:38) [20]

thx 2 Кладов!!!
возник другой вопрос:
там ещё используется AllocateHWnd и DeallocateHWnd из библиотеки Classes. в КОЛ есть эквиваленты этих функций?


 
Владимир Кладов   (2004-12-19 20:41) [21]

в модулях Шахайло objects - см на рядом с основными архивами на моем сайте. Они еще и исправлены по сравнению с глючными версиями от Борланд (нет утечки памяти).


 
Аид   (2004-12-19 22:36) [22]

2 Кладов: большое спасибо! Библиотеку поритровал полностью.
2 Gandalf: лови на мыло, то что получилось. Там переделанная на КОЛ сетевая библиотека с поддержкой протоколов TCP и UDP. Топик можно закрывать. ;)


 
Аид   (2004-12-19 22:36) [23]

2 Кладов: большое спасибо! Библиотеку портитровал полностью.
2 Gandalf: лови на мыло, то что получилось. Там переделанная на КОЛ сетевая библиотека с поддержкой протоколов TCP и UDP. Топик можно закрывать. ;)


 
Gandalf ©   (2004-12-20 22:22) [24]

Пришло


 
Аид   (2004-12-29 18:28) [25]

блин. при проверке получилась сл. фигня: как только пакет приходит в UDPServer так возникает ошибка приложения.
при отладке оказалось что вылетает в
if Assigned(FOnData) then
     FOnData(@Self, Socket);
чем-то его не устраивает @Self...
TOnData = procedure(Sender: TObject; Socket: TSocket) of object;

обработку привязываю:
procedure UDPData(Sender: TObject; Socket: TSocket);
var
 Data: string;
 SockAddrIn: TSockAddrIn;
begin
     Data:= UDP.Read(Socket, SockAddrIn);
     MsgOK(Data);
end;

begin
 UDP:=NewUDPServer();
 UDP.OnData:=TOnData(MakeMethod(UDP,@UDPData));
 UDP.Port:="666";
 UDP.Open;
 form:=NewForm(Applet,"Server");
 run(form);
 UDP.Close;
end.


 
Аид   (2004-12-29 18:50) [26]

при проверке оказалось что данные в объекте нормальные... но при передаче в мою функцию обработки
procedure UDPData(Sender: TObject; Socket: TSocket);
var
Data: string;
SockAddrIn: TSockAddrIn;
begin
    Data:= UDP.Read(Socket, SockAddrIn);
    MsgOK(Data);
end;
значение Socket совершенно другое. в чем может быть проблема?


 
admdenis   (2005-01-06 05:10) [27]

Люди поделитесь тем что у вас есть я тоже хочу поучаствовать.
Ато Indy UdpServer почти перевёл =)(для версии MyIndy) Запуститься запускается в вот поток что то не работает :(
Если UDPServer у вас рабочий скиньте на мыло admdenis@narod.ru
Очень нужно, спасибо.


 
admdenis   (2005-01-06 15:14) [28]

Ладно не нужно я сам всё доделал. Скоро выложу IdUDPServer.
Проблема была в том что класс TIdThread насладовался от TThread
а т.к. сам поток создаётся функцией NewThread то естественно она не вызывалась при наследовании :) я наследовал TIdThread от TObj а в TIdThread просто создаю TThread и прикручиваю к нему все события. Всвязи с этим у меня возник вопрос если обьект TSomeObject конструируется функцией NewSomeObject(someparams) то при наследовании TSomeObject2 = object (TSomeObject) метод NewSomeObject не вызывается. Получется что наследуются все методы и свойства а вот конструктор не наследуется. Как в кол с этим борятся? Или кол никак не позволяет наследовать конструктор?


 
admdenis   (2005-01-07 14:49) [29]

Тут можно скачать мою версию библиотек работают UDPServer и UDPClient возможно заработает TCPServer.
http://admdenis.narod.ru/KOLMyIndy.zip


 
Vladimyr ©   (2005-04-29 03:33) [30]

2 Кладов   (19.12.04 20:41) [21]

> в модулях Шахайло objects - см на рядом с основными архивами
> на моем сайте. Они еще и исправлены по сравнению с глючными
> версиями от Борланд (нет утечки памяти).


Да они тоже весьма глючные. Попробуйте просто

AllocateHWND;
DeallocateHWnd;


а потом ещё раз

AllocateHWND;
DeallocateHWnd;


- и тут же программа вылетит.

В процедуре FreeObjectInstance

пропущена строка

   if InstBlockCount = 0 then begin
      InstFreeList := nil;


=(



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

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

Наверх





Память: 0.51 MB
Время: 0.015 c
8-1121921560
Uncle Archi
2005-07-21 08:52
2005.12.25
JPG


14-1133306290
Piter
2005-11-30 02:18
2005.12.25
знатокам MPlayer


2-1133953074
novice
2005-12-07 13:57
2005.12.25
Запуск приложения с ключом


2-1134041352
De1uxe
2005-12-08 14:29
2005.12.25
Real -> integer


3-1131021367
root
2005-11-03 15:36
2005.12.25
Кирилица в SQL





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