05-26-2016, 11:30 PM
PROGRAMMATOR Написал:Ничего не нашел, вот и вернул null. И IN(@Login) замени на = @Login.
а почему он не нашел , я же все указал в protocol_login_req
PROTOCOL_LOGIN_ACK
|
05-26-2016, 11:30 PM
PROGRAMMATOR Написал:Ничего не нашел, вот и вернул null. И IN(@Login) замени на = @Login. а почему он не нашел , я же все указал в protocol_login_req
05-26-2016, 11:51 PM
Я же не вижу, что у тебя пришло в login. Выведи в лог и проверь.
05-27-2016, 12:41 AM
PROGRAMMATOR Написал:Я же не вижу, что у тебя пришло в login. Выведи в лог и проверь. ничего, пусто ![]()
05-27-2016, 01:15 AM
Что у тебя в ReadS?
05-27-2016, 01:19 AM
PROGRAMMATOR Написал:Что у тебя в ReadS? [SRC=CSharp] public string ReadS(int length) { string text = ""; try { text = Encoding.Default.GetString(_buffer, _offset, length); int index = text.IndexOf('\0'); if (index != -1) { text = text.Remove(index); } _offset += length; } catch (Exception e) { Log.Error(e.ToString()); } return text; } public string ReadS() { string text = ""; try { text = Encoding.Default.GetString(_buffer, _offset, _buffer.Length - _offset); int index = text.IndexOf('\0'); if (index != -1) { text = text.Remove(index); } _offset += text.Length + 1; } catch (Exception e) { Log.Error(e.ToString()); } return text; } [/SRC]
05-27-2016, 02:28 AM
ArgumentOutOfRangeException.
Разбирайся со своим offset'ом.
05-27-2016, 09:53 AM
Boris2105,
Верни BinaryReader, Пиши на нем, Или вообще все удали и пиши на оффестах.
05-27-2016, 03:43 PM
Awiion Написал:Boris2105, Я хочу писать на BinaryReader , но не смог реализовать ReadBytes[] Так как в примерах было только то что при создании метода можно только статичный размер , а так чтобы указывать размер в каждом файле по разному не было. То есть [SRC=CSharp] ClientPacket protected byte[] ReadBytes() => reader.ReadBytes(100); [/SRC]
05-27-2016, 05:25 PM
Boris2105 Написал:Я хочу писать на BinaryReader , но не смог реализовать ReadBytes[] У тебя 2 разных стека =D в одном у тебя 100 байт записано, в другом через жопу 100 байт, и стек не попадает, + на BinaryReader тебе только стек указать надо и размер сколько занимает байт все Да он читает, но у тебя в потоке хрень какает а, пиши уже на чем то одном, Вот по этому тебе и приходит NULL, с ошибкой....... Какой нафиг оффест, если ты работаешь с BinaryReader, первые 4 байта пропустить можно, я не понимаю зачем строить велосипед, зачем какие то буферы отводить для брайна, когда там и так уже все включено. Единственное что тебе его надо очищать от хлама, что бы меньше нагружал, да и вообще не управляемый код не держал в себе и все. ________________________________________________________ ReadBytes | int Что тут реализовывать? Напиши конструктор, и все За тебя уже все тут реализовали, тебе только остается этим пользоваться, Открой BinaryReader ф12, и хотя бы глазами посмотри как он реализован
05-27-2016, 05:57 PM
Awiion Написал:У тебя 2 разных стека =D хорошо , спасибо я понял (Избавить код от лишней фигни , использовать то что уже реализовано,не изобретать велосипед , особенно кривой ) |
« Предыдущая | Следующая »
|
Возможно похожие темы ... | |||||
Тема | Автор | Ответы | Просмотры | Последний пост | |
Структура PROTOCOL_LOGIN_ACK | 15 | 4,482 |
01-20-2016, 01:02 AM Последний пост: PROGRAMMATOR |