2013-10-27 5 views
0

Я ввел dll в игровой клиент и подключил send/recv с помощью Easyhook. Я могу легко отслеживать пакеты, которые клиент отправляет на сервер и получает с сервера. Я хочу отправить свои пакеты, так что я сделал такую ​​функцию:Easyhook Отправить Packet Trouble

public static void SendPacket() 
{ 
    string packet= "dance emotion packet"; 
    byte[] byData = System.Text.Encoding.ASCII.GetBytes(packet); 
    IntPtr unmanagedPointer = Marshal.AllocHGlobal(byData.Length); 
    Marshal.Copy(byData, 0, unmanagedPointer, byData.Length); 
    send(socket, unmanagedPointer, byData.Length, 0); 
} 

Я думаю, что программа посылает пакет просто отлично, но я ничего от сервера не получаю. Например, если я посылаю пакет для танцевальной эмоции, сервер не отвечает. Интересно, когда я делаю что-то в клиенте (например, открываю магазин или перемещаю или что-либо, что отправляет пакет на сервер) сервер отвечает на пакет танца, который я отправил, прежде чем использовать функцию SendPacket() в моей вложенной dll ,

Таким образом, проблема заключается либо в том, что моя dll не может отправить пакет, либо сервер не отвечает. У кого-нибудь есть решение для этого?

Заранее спасибо.

ответ

0

Это не похоже на проблему EasyHook. Вероятно, вам не хватает определенного специфического игрового протокола, который работает только после того, как сама игра правильно отправит информацию, которую сервер должен ответить на ваш пакет.