ИздевательствоMaxim Mirgorodsky писал(а):Но будьте внимательны, размер UDP пакетов ограничен 64 килобайтами.
еще вопрос: нельзя-ли реализовать команду приглашения в канал пользователя?
ИздевательствоMaxim Mirgorodsky писал(а):Но будьте внимательны, размер UDP пакетов ограничен 64 килобайтами.
+1cilvay писал(а):еще вопрос: нельзя-ли реализовать команду приглашения в канал пользователя?
ну, начнем с того что я все-же осилил собрать и настроить проект на VC++ 2008, после пробовал освоить вывод сообщений в канал, но не смог ничего сотворить с самого начала, так как не понимаю этих, нет точного описания структуры сообщения, да и вообще нет нигде описанияMaxim Mirgorodsky писал(а):Пожалуйста, поясните, на каком этапе проблемы. Что уже получилось сделать (работает), и что именно не получается.
читал, архивы скачал - но вот теперь объясните, как представить записьDIGGER писал(а):joub, второй пост в этой теме. читайте внимательно.
Код: Выделить всё
Блок данных: текст(название канала) + текст(сообщение)
Читайте раздел "соглашения используемые при работе с блоком данных". Например, "текст(название канала)" это 4 байта содержащие объем текста и далее сам текст в формате ANSI (1 символ - 1 байт). Управляться с данными можно с помощью функции memcpy().какой вообще это тип переменной ?Код: Выделить всё
Блок данных: текст(название канала) + текст(сообщение)
Maxim Mirgorodsky писал(а):Читайте раздел "соглашения используемые при работе с блоком данных". Например, "текст(название канала)" это 4 байта содержащие объем текста и далее сам текст. Управляться с данными можно с помощью функции memcpy().какой вообще это тип переменной ?Код: Выделить всё
Блок данных: текст(название канала) + текст(сообщение)
тобишь пример: XXXX"main"YYYY"тело сообщения"Maxim Mirgorodsky писал(а):Читайте раздел "соглашения используемые при работе с блоком данных". Например, "текст(название канала)" это 4 байта содержащие объем текста и далее сам текст в формате ANSI (1 символ - 1 байт). Управляться с данными можно с помощью функции memcpy().какой вообще это тип переменной ?Код: Выделить всё
Блок данных: текст(название канала) + текст(сообщение)
Код: Выделить всё
BYTE *aMessageToSend;
DWORD len,len_ch;
unsigned char MessageSend[500];
char chanal[]="main",mesage[]="hello";
aMessageToSend = MessageSend;
Beep(5000,50);
len=0;
len_ch=strlen(chanal);
memcpy(MessageSend+len,&len_ch,4);
len=len+4;
memcpy(MessageSend+len,chanal,len_ch);
len=len+len_ch;
len_ch=strlen(mesage);
memcpy(MessageSend+len,&len_ch,4);
len=len+4;
memcpy(MessageSend+len,mesage,len_ch);
len=len+len_ch;
(*CommFortProcess)(dwPluginID,50,aMessageToSend,len);
Код: Выделить всё
Сообщение в общий канал
Для публикации сообщения в общий канал необходимо вызвать импортированную функцию CommFortProcess с параметрами:
ID: 50
Блок данных: текст(название канала) + текст(сообщение)
Состояние в общий канал
Для публикации состояния в общий канал необходимо вызвать импортированную функцию CommFortProcess с параметрами:
ID: 51
Блок данных: текст(название канала) + текст(состояние)
Изображение в общий канал