vovksextra Posted March 19, 2008 at 10:04 AM Author Posted March 19, 2008 at 10:04 AM На счет сокетов и компонента - я не так выразился, извините. Я понимаю что все основано на сокетах. Просто в том исходнике что на С, все создается вручную, а тут все как-то просто.Я не хочу трудностей, просто хочется понять какие пакеты шлет клиент, какими пакетам ему отвечает сервер, как устанавливается соединение. Это мне надо. В чем отличие протоколов? Может есть RFC старгазеровский )? Исходники представляют точную копию авторизатора С++ - шного Для "общения" с сервером используются методы работы с сокетами на чистом WIN API. Компонент TUDP - используется только для связи с InetAdmin-ом (лень было писать на чиcтом API) Так что проще быть не может )) Это точная копия+добавлены "фишки" разные, в т.ч. автообновления авторизатора и т.д. Здесь ты найдешь исходники того, что было взято за основу http://www.stg.dp.ua/server_dl.php?show=2.404.9.7
AXXX Posted August 11, 2008 at 10:36 AM Posted August 11, 2008 at 10:36 AM Народ я покапался в исходниках на 1стр. ....и ВАХ!!! Застрял на месте подключения проги к серверу. Вылетает ошибка на строке res := recvfrom(sockr, buffer, 512, 0, addr, fromLen); это в PROTO_UNIT, как я понял sockr имеет неправильное значение, а что сделать незнаю. такая же фигня с phase в теле.... if phase=1 then begin if buttonAct = CCONNECT then begin buttonAct := 0; NetSend(CONN_SYN_N); phase := 2; phaseTime := GetTickCount(); end; end; if phase=2 then begin {$WARNINGS OFF} if ((GetTickCount() - phaseTime) / 1000 > aliveTimeout) then {$WARNINGS ON} begin phase := 1; phaseTime := GetTickCount(); if Assigned(pCallBackFn) then pCallBackFn(0); if reconnect then begin Sleep(20); buttonAct := CCONNECT; end; end; ........ ........ if netAct = ERROR_N then begin phase := 1; phaseTime := GetTickCount(); if Assigned(pCallBackFn) then pCallBackFn(0); end; end;
vovksextra Posted August 11, 2008 at 01:40 PM Author Posted August 11, 2008 at 01:40 PM Ошибок в коде нет - проверь опции компилятора. Наличие галок увидишь на картинке.
AXXX Posted August 12, 2008 at 05:18 AM Posted August 12, 2008 at 05:18 AM Вот трабла... опции один в один... Касяк не при компиляции, а при событии на подключение, там у двух переменных (sockr, phase) пишит неправилиное значение. P.S. Если интересно могу выслать, то что у меня получилось.
vovksextra Posted August 12, 2008 at 06:22 AM Author Posted August 12, 2008 at 06:22 AM Вот трабла... опции один в один...Касяк не при компиляции, а при событии на подключение, там у двух переменных (sockr, phase) пишит неправилиное значение. P.S. Если интересно могу выслать, то что у меня получилось. Что значит не правильные значения? И о какой ошибке идет речь? Телепатов нет у нас )) Возможно компилятор тебе выдавал при компиляции warning - но это значит что там ошибка, а значит то, что-бы разработчик обратил внимание на строку кода. Судя по коду, там там местами действительно идет сравнение разных типов данных - целочисленного с вещественным. Компилятор Си такие "вещи" кушает очень даже легко. Компилятор PASCAL - тебе дает предупреждение. Но это не значит что так быть не может.
AXXX Posted August 12, 2008 at 10:24 AM Posted August 12, 2008 at 10:24 AM Вот скрины..... при компиляции ошибок нет и предупреждений тоже... (если говорить по конкретнее про траблу на втором рисунке, то при наведении курсора на sockr - вылетает помойму Inaccessable value, короче говоря по русскинправильное значение переменной..)
madf Posted August 12, 2008 at 10:59 AM Posted August 12, 2008 at 10:59 AM ...Компилятор Си такие "вещи" кушает очень даже легко. ... Ошибочка. Он выдает предупреждение.
madf Posted August 12, 2008 at 11:01 AM Posted August 12, 2008 at 11:01 AM Вот скрины..... при компиляции ошибок нет и предупреждений тоже... (если говорить по конкретнее про траблу на втором рисунке, то при наведении курсора на sockr - вылетает помойму Inaccessable value, короче говоря по русскинправильное значение переменной..) По скрину не видно что предупреждений компилятора нет. Кроме того, Access violation при recvfrom обычно говорит о недостаточно размере приемного буфера.
vovksextra Posted August 13, 2008 at 12:10 AM Author Posted August 13, 2008 at 12:10 AM Во первых, судя по скрину в исходники уже были внесены изменения. )) Во вторых, я хотел-бы увидеть, где автор еще внес свои коррективы в код. Боюсь что автор сего кода "поигрался" с типами данных переменных, используемых при вызове recvfrom., или же были внесены изменения в стандартные библиотеки для работы с сокетами. другого варианта, при котором выскакивает AccessViolation я просто не вижу. PS. В трее я не вижу некую иконку, которая бы хоть как-то защищала твою систему. Еще как вариант - запусти AVZ....
AXXX Posted August 13, 2008 at 04:41 AM Posted August 13, 2008 at 04:41 AM Вах!!!! Я нашёл касяк!!! Дело в компоненте TUDP, он напрочь отказывается залазить в делфу... При первом запуске спрашивает об игнорировании и удалять ли его упаминание из тела кода... Если компилить сразу то всё кул, но приповторном запуске делфы - каюк... . Вывод: необходимо найти dpk пакет этого компонента... P.S: Кстати про защиту, в винде я пользуюсь только делфой - защита мне там нафик не нужна и защищяться неоткого)))) .... Slackware + Alt linux RULL!!!!!)))))))))
vovksextra Posted August 13, 2008 at 11:35 AM Author Posted August 13, 2008 at 11:35 AM Вывод: необходимо найти dpk пакет этого компонента... Нечего тебе искать - просто зарегистрируй компоненту, которая поставляется вместе с исходниками.
AXXX Posted August 14, 2008 at 01:11 AM Posted August 14, 2008 at 01:11 AM Нечего тебе искать - просто зарегистрируй компоненту, которая поставляется вместе с исходниками. НЕхотит не в какую регистрироваться... . P.S. исходники просто офигенные, респект их автору.
Stiff Posted December 14, 2008 at 04:42 PM Posted December 14, 2008 at 04:42 PM У кого есть сырцы к сабжу? просьба выложить
vovksextra Posted December 14, 2008 at 07:46 PM Author Posted December 14, 2008 at 07:46 PM У кого есть сырцы к сабжу? просьба выложить смотри первый пост
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now