Форум программистов, компьютерный форум, киберфорум
C (Си)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 23.08.2013
Сообщений: 22
1

Отправка сообщения в minecraft сервер

03.04.2014, 18:01. Просмотров 1112. Ответов 3
Метки нет (Все метки)

Здравствуйте, у меня возникла проблема с отправкой сообщений в minecraft сервер. Я делаю так:
C
1
2
3
4
5
6
7
void sendMessage(char *message){
    write(serverpipe[WRITE], message, sizeof(message));
}
//...
while(fgets(line, sizeof(line), stdin) != NULL){
    sendMessage(line);
}
Но отправка ведёт себя странно. В первый раз сервер нормально принимает команду, но во второй и последующие разы он сообщает о неверной команде. Вот вывод сервера:
[SERVER][16:12:06 INFO]: Starting minecraft server version 1.7.2
//...
//...
//...
[SERVER][16:12:07 INFO]: Done (0,892s)! For help, type "help" or "?"
list
[SERVER][16:14:29 INFO]: There are 0/20 players online:

list
[SERVER][16:14:31 INFO]: Unknown command. Type "help" for help.
list
[SERVER][16:14:34 INFO]: Unknown command. Type "help" for help.
Пробовал делать memset(line, '\0', sizeof(line)), но это не помогает. Надеюсь на вашу помощь.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.04.2014, 18:01
Ответы с готовыми решениями:

Отправка сообщения на сервер
здравствуйте господа программисты. Столкнулся я с такой проблемой. Пишу клиент сервер. Клиент...

Отправка email-сообщения на smtp сервер с ssl
Помогите написать программу на c++, отправляющую email сообщение на smtp сервер с ssl.

Отправка сообщения на сервер 1 раз в определенный интервал
Здравствуйте Раз в 10 секунд(зависит от конфигурации) мне нужно отправлять на сервер сообщение,...

Отправка сообщения на почту с формы через виртуальный сервер
С php очень слабо знаком. Нужна форма обратной связи на сайт. Я скачивал разные плагины, они...

3
Псевдослучайный
1936 / 1137 / 96
Регистрация: 13.09.2011
Сообщений: 3,205
03.04.2014, 21:31 2
Лучший ответ Сообщение было отмечено serega6531 как решение

Решение

sizeof(message) — это sizeof(char*). Стоит использовать strlen().
1
0 / 0 / 0
Регистрация: 23.08.2013
Сообщений: 22
03.04.2014, 21:41  [ТС] 3
А для line?

Добавлено через 3 минуты
Спасибо! Спасибо огромное! Решил проблему!
Ещё вопрос, у строки, получаемой через fgets() есть \n на конце?
0
444 / 225 / 48
Регистрация: 21.09.2008
Сообщений: 780
06.04.2014, 15:12 4
Попробуйте освоить универсальный фильтр сетевых пакетов, свободно распространяемый Wireshark. В Сети есть шикарная книга на английском Yoram Orzach "Network Analysis Using Wireshark Cookbook", вышедшей в 2013 году в изд-ве Packt Publishing. Гугль в помощь.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.04.2014, 15:12

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Игровой сервер Minecraft
Решил написать на Delphi сервер. Что для этого нужно ? некогда ещё не писал сервера, просто тупо...

Международный Minecraft-сервер. Как?!
Здравствуйте. Есть необходимость поднять minecraft сервер. На нём будет играть маленькая группа...

Ограниченные средства и Minecraft сервер
Доброго всем времени суток! Хотелось поинтересоваться у важных людей с данного форума, прежде чем...

Ошибка при подключении на сервер в minecraft 1.5.1
Почему пишет "Could not connect to default server, please try again later". Подскажите что делать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.