Вернуться   CoderX :: Forums > Основные форумы > Программинг
Войти через OpenID

Программинг Форум для тем связанных с программированием

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 16.01.2012, 10:38   #1
Местный
 
Регистрация: 10.08.2010
Сообщений: 634
Сказал Спасибо: 22
Имеет 95 спасибок в 70 сообщенях
mira пока неопределено
По умолчанию

Пакеты кладет в буффер пакеты (их копию) сам клиент в хуке.
Сервисный поток разбирает буфер и обрабатывает пакеты занося данные в бд, онже обрабатывает события и состояния программы. Он резидентный.
Другой поток крутит скрипт оперируя инфой из бд, его можно завершать и запускать снова (что и происходит при запуске другова скрипта или паузе). Краш в этой нити максимум останавливает скрипт.

форм никаких нет. Нелюблю лишние окна. У програмы свой графический оконный движок внутри клиента.
__________________
читернуть бы ништяг
mira вне форума   Ответить с цитированием
За это сообщение mira нажился спасибкой от:
Старый 16.01.2012, 21:39   #2
Пользователь
 
Регистрация: 04.11.2009
Сообщений: 44
Сказал Спасибо: 57
Имеет 3 спасибок в 2 сообщенях
vahes пока неопределено
По умолчанию

Цитата:
Сообщение от mira Посмотреть сообщение
Пакеты кладет в буффер пакеты (их копию) сам клиент в хуке.
Сервисный поток разбирает буфер и обрабатывает пакеты занося данные в бд, онже обрабатывает события и состояния программы. Он резидентный.
Другой поток крутит скрипт оперируя инфой из бд, его можно завершать и запускать снова (что и происходит при запуске другова скрипта или паузе). Краш в этой нити максимум останавливает скрипт.

форм никаких нет. Нелюблю лишние окна. У програмы свой графический оконный движок внутри клиента.
Я почти также хотел, только чуть по другому, поскольку у меня есть форма (до своего графического движка я еще не дорос) она оперирует данными с бд и тд. В отдельном потоке запустить ф-ю хука которая кладет в буффер пакеты, и еще 1 поток который будет тикать и доставать с буфера пакеты и заносить данные в бд (ф-ю тика засунуть в таймер). Вот но я не догоню как запустить таймер в отдельном потоке, ему вроде как нужна родительская форма.
Ну и тут у меня еще куча вопросов, как таймер загружает систему, вот у меня в режиме радара работает 7 таймеров и когда я их включаю куллер заметно начинает шуметь( может это параноя ), может не стоит так много таймеров использовать?
И еще как себя поведет например программа если в буфер данные одновременно будут ложится одним потоком и извлекаться другим?
И как вообще лучше организовать буфер? Я думал, например, array[50] of
DELPHI Код:
TFixPck = packed record case Integer of     0:(ch: array[Word] of Char); 1:(bt: array[Word] of Byte);     2:(size: Word; id: Byte; dbt: array[0..65532] of Byte);   end;
(спер у xkorа) или вместо массива как в клиенте указатель, но блин я не силен в выделении/освобождении памяти под указатели 100% где-то напартачу.
Звиняйте, что так много вопросов, просто говнокодствую, а потом по 20 раз переписываю. Думаю лучше все точно узнать, и сделать сразу нормально. Спасибо за помощь.

Добавлено через 8 минут
Цитата:
Сообщение от ziher Посмотреть сообщение
У меня такой вопрос: как читать из памяти клиента НПЦ и игроков? ХП МП И СР разобрался, а это ума не приложу. буду благодарен за любой ответ.
Ну смотря как ты узнаешь хп мп и цп, если по фиксированым смещениям в памяти от этого приема лучше уйти сразу. Можно перехватывать пакеты как л2пх или уже расшифрованые хукая UNetworkHandler::AddNetworkQueue(NetworkPacket *) или UNetworkHandler:ispatchNetworkQueue(NetworkPacke t * *) или хукая ф-и которые эти пакеты вызывают UNetworkHandler::OnЧего-то там ну на этом мои познания заканчиваются , а вообще здесь вот http://coderx.ru/showthread.php?t=1077 и еще в этой ветке очень много полезной инфы по этому поводу. По 20 раз перечитывая одно и тоже на 21й обычно доходит (так делал я)

Последний раз редактировалось vahes, 16.01.2012 в 21:39. Причина: Добавлено сообщение
vahes вне форума   Ответить с цитированием
За это сообщение vahes нажился спасибкой от:
Ответ

  CoderX :: Forums > Основные форумы > Программинг



Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 08:39.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!