Вверх ↑
Этот топик читают: Гость
Ответов: 23
Рейтинг: 0
#1: 2010-02-05 18:05:57 ЛС | профиль | цитата
Здравствуйте! Хотел спросить про один глюк, похоже начиная с билда 181 не работает ServerEx, даже пример httpserver после подключения вызывает runtime error 201.
карма: 0

0
Ответов: 2125
Рейтинг: 159
#2: 2010-02-06 10:16:44 ЛС | профиль | цитата
Попробуй обновить компонент с SVN, может быть последние изменения не попали в дистрибутив b181.
карма: 1

0
Ответов: 23
Рейтинг: 0
#3: 2010-02-06 15:48:48 ЛС | профиль | цитата
Да я обновлял... b182 ведет себя так же. А в b180 нормально, почти, память только жрет. Думал что в новых сборках будет лучше, а там вообще не робит.
карма: 0

0
Ответов: 4641
Рейтинг: 334
#4: 2010-02-06 16:11:15 ЛС | профиль | цитата
Alex35567 писал(а):
Да я обновлял

а это ? SVN
карма: 1
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 23
Рейтинг: 0
#5: 2010-02-06 20:04:55 ЛС | профиль | цитата
Помогло! По крайней мере заработал пример, буду пробовать со своей прогой. Интересно то что по началу компилироваться не хотел - компилятор писал ошибку Line too long (1023), кто-то вроде жаловался на такое. Похоже файл был в кодировке DOS, или стал похожим на таковой после скачивания оперой, по крайней мере UltraEdit так решил. Короче не заморачиваясь пересохранил Rpad-ом в win1251 и все пошло.
Спасибо!
карма: 0

0
Ответов: 5446
Рейтинг: 323
#6: 2010-02-06 20:46:17 ЛС | профиль | цитата
Alex35567, скорее в "кодировке" Unix (точнее, с окончаниями строки в стиле unix)
карма: 1

0
Ответов: 23
Рейтинг: 0
#7: 2010-02-08 13:24:11 ЛС | профиль | цитата
А вот и еще один глюк, собственно с которого всеначалось.
Вот две програмки суть которых показать глюк, смысла внутри немного. Первая сервер построенный на основе ServerEx, к нему подключается клиент, сервер закрывает это подключение. Если замкнуть onRead внутри ServerEx на doClose, то все работает, если же между этими точками есть некоторое количество компанентов, начиная с простого Hub, то вылетают ошибки при закрытии Exception или Self destruction not allowed!!! Проблема ошибок решается установкой перед точкой doClose параллельного потока, но в этом серверная прога начинает жрать память, причем вплоть до ошибки Out of memory! Видимо такое рашение неправильно и надо понять причину ошибок. У меня не хватает знаний разобраться... Может вы поможите.
Не могу файл добавить - пишет у вас не хватает прав, так что код в текст вложил.
------------------------


Сервер:
Make(delphi)
ver(4.04 build 182)
Add(MainForm,2953706,189,49)
{
link(onCreate,7183488:##open,[])
}
Add(TCP_ServerEx2,7183488,266,63)
{
ServerPort=8081
}
BEGIN_SDK
Add(EditMultiEx,15085026,21,21)
{
WorkCount=#6:##open|
Width=643
}
Add(TCP_Connection,8142414,63,56)
{
link(onRead,11366045:doEvent1,[])
}
Add(Memory,1697652,406,56)
{
link(onData,14110773:doSearch,[])
}
Add(Position,14110773,455,56)
{
@Hint=#68:Îòñëåæèâàåì çàïðîñ ajax è ïîñûëàåì îòâåò, íó è/èëè âûïîëíÿì äåéñòâèÿ|
Target="ajax_"
ZeroPos=0
ShortSearch=1
link(onSearch,1925181:doCompare,[])
}
Add(If_else,1925181,525,56)
{
Op2=Integer(0)
link(onTrue,9067877:doWork1,[(571,62)])
link(onFalse,9067877:doWork2,[])
}
Add(BlockFind,6091776,210,56)
{
IncludeBlock=1
StartBlock="GET"
EndBlock="HTTP"
Point(onNotFind)
link(onSearch,9873233:doWork2,[])
link(onNotFind,4106439:doSearch,[])
}
Add(BlockFind,4106439,266,70)
{
IncludeBlock=1
StartBlock="POST"
EndBlock=" HTTP"
Point(onNotFind)
link(onSearch,9873233:doWork3,[(312,76)])
}
Add(Memory,1242222,154,56)
{
link(onData,6091776:doSearch,[])
}
Add(HubEx,9873233,308,56)
{
link(onEvent,14263935:Ïðåîáðàçóåìàÿ ñòðîêà,[])
}
Add(MultiElementEx,14263935,350,56)
{
@Hint=#44:Ïîäìåíÿåò ñèìâîëû %xx íà yyy (â äåñÿòè÷íîì)|0:|
link(onÐåçóëüòàò,1697652:doValue,[])
}
BEGIN_SDK
Add(EditMultiEx,10489684,21,21)
{
WorkCount=#20:Ïðåîáðàçóåìàÿ ñòðîêà|
EventCount=#11:onÐåçóëüòàò|
Width=811
Height=466
link(Ïðåîáðàçóåìàÿ ñòðîêà,14978128:doEvent1,[(122,27)(122,90)])
}
Add(Position,7628536,238,147)
{
Target="%"
link(onSearch,8474613:doOperation,[])
link(Str,746716:Var2,[])
}
Add(Memory,994251,238,70)
{
link(onData,2503393:doWork1,[(282,76)(282,113)(214,113)])
}
Add(Copy,1122981,336,147)
{
Count=2
link(onCopy,4242220:doEvent1,[])
link(Str,746716:Var3,[(342,131)])
link(Position,8474613:Result,[(349,135)(317,135)(317,191)(286,191)])
}
Add(Convertor,12046194,511,147)
{
Mode=5
link(onResult,7248258:doConvert,[])
}
Add(Replace,828282,665,147)
{
link(onReplace,686649:doWork3,[(702,153)(702,115)(226,115)])
link(Str,8099385:Var3,[(671,117)])
link(Sub_str,16732278:Value,[(678,127)(506,127)(506,205)(468,205)])
}
Add(Memory,16732278,462,161)
{
}
Add(GetDataEx,8099385,238,112)
{
link(Data,994251:Value,[])
}
Add(Hub,4242220,378,147)
{
link(onEvent1,2354332:doStrCat,[(401,153)(401,167)])
link(onEvent2,12046194:doConvert,[(406,160)(406,153)])
}
Add(StrCat,2354332,413,161)
{
Str1="%"
link(onStrCat,16732278:doValue,[])
}
Add(HubEx,686649,222,84)
{
Angle=3
link(onEvent,994251:doValue,[(226,76)])
}
Add(Hub,14978128,140,84)
{
OutCount=3
link(onEvent1,686649:doWork2,[])
link(onEvent2,2503393:doWork2,[(196,97)(196,153)])
link(onEvent3,12731517:doData,[(175,104)(175,251)])
}
Add(Math,8474613,280,147)
{
Op2=1
ResultType=0
link(onResult,1122981:doCopy,[])
}
Add(GetDataEx,746716,238,126)
{
link(Data,8099385:Var2,[])
}
Add(Convertor,7248258,553,147)
{
Mode=4
link(onResult,828282:doReplace,[])
}
Add(DoData,12731517,182,245)
{
link(onEventData,10489684:onÐåçóëüòàò,[(541,251)(541,27)])
link(Data,8099385:Var1,[(188,117)])
}
Add(HubEx,2503393,210,147)
{
link(onEvent,7628536:doSearch,[])
}
END_SDK
Add(HubEx,9067877,567,63)
{
link(onEvent,8142414:doClose,[(600,69)(600,32)(600,32)(51,32)(51,62)])
}
Add(Hub,11366045,119,56)
{
link(onEvent1,1242222:doValue,[])
}
END_SDK
Add(TCP_Client2,2065185,294,119)
{
}
----------------------------------------------------------------------------
Клиент:
Make(delphi)
ver(4.04 build 182)
Add(MainForm,2953706,84,112)
{
Caption="Client"
}
Add(TCP_Client,14483641,343,140)
{
Port=8081
IP="127.0.0.1"
link(onRead,14567411:doText,[])
link(onDisconnect,8635246:doNext,[])
}
Add(Timer,5696206,182,140)
{
link(onTimer,10285692:doEvent1,[])
}
Add(Hub,10285692,231,140)
{
link(onEvent1,14483641:doOpen,[])
link(onEvent2,553782:doData,[(263,153)(263,160)])
}
Add(DoData,553782,280,154)
{
Data=String(GETasdfghjklzxcvbnm HTTP)
link(onEventData,14483641:doSend,[])
}
Add(Label,11036455,518,154)
{
Left=65
Top=25
Width=160
}
Add(Counter,8635246,455,154)
{
link(onNext,11036455:doText,[])
}
Add(Label,14567411,399,140)
{
Left=65
Top=50
Width=25
Height=17
Caption="data"
}

карма: 0

0
Ответов: 1841
Рейтинг: 370
#8: 2010-02-08 13:36:37 ЛС | профиль | цитата
Alex35567, прочитай с начало это Код
карма: 1
0
Ответов: 23
Рейтинг: 0
#9: 2010-02-10 08:47:56 ЛС | профиль | цитата
Хорошо я исправлюсь . Еще я по ошибке привел код с немного изменным компонентом ServerEx2, но с исходным таже проблема, так что там нужно изменить ServerEx2 на ServerEx, вот так:
Серверная часть:
code_16858.txt

Клиентская часть:
code_16859.txt
карма: 0

0
файлы: 2code_16858.txt [4KB] [108], code_16859.txt [777B] [90]
Главный модератор
Ответов: 3000
Рейтинг: 396
#10: 2010-02-10 09:48:15 ЛС | профиль | цитата
http://hiasm.com/forum.html?q=3&p=116996#p116996
карма: 6
Дорогу осилит идущий. Install/Update HiAsm.NET
0
10
Сообщение
...
Прикрепленные файлы
(файлы не залиты)