ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

CSocket и RichEdit в MFC
  #1  
Старый 30.10.2006, 02:24
Аватар для LordNet
LordNet
Познающий
Регистрация: 07.02.2006
Сообщений: 33
Провел на форуме:
373519

Репутация: 24
Question CSocket и RichEdit в MFC

Как мне по сокету (CSocket) передать и принять все стили текста (шрифт,цвет и т.д.) c текстом из CRichEditCtrl?
Желательно показать примерчик.
Заранее спасибо!
 
Ответить с цитированием

  #2  
Старый 30.10.2006, 16:38
Аватар для sn0w
sn0w
Статус пользователя:
Регистрация: 26.07.2005
Сообщений: 568
Провел на форуме:
1290766

Репутация: 1236


По умолчанию

тк CSocket это не что иное как ооп-интерпретация стандартных виндовых сокетов, то тут в принципе все также как и в апи, просто нужно отправить буфер с основными характеристиками. например можно сделать структуру-описатель текста которая будет засылаться перед несущей строкой или после нее (сам решишь).

typedef struct _FONTDESCR{
// "магический" идентификатор
BYTE n_font_magic = 0x00;
// далее характеристики
char s_font_name[128];
int n_font_size;
int n_color;
int n_mode; // bold, italic, etc
//... + какие угодно параметры
}FONTDESCR;

магика нужна при приеме пакета, те если первый байт пакета будет равен 0 (строки наоборот завершаются нулем) то мы будем однозначно знать что это пакет не строка, а управляющий стиль.

char s_buff[4096];
int rc;
...
rc = recv( s, s_buff, sizeof(s_buff), 0 );
if(rc!=SOCKET_ERROR ){
if(s_buff[0]==0){
FONTDESCR *pDescr = (FONTDESCR*)&s_buff[0];
ProcessRichTextFormat(pDescr); // установка формата на строку
}else{
AddTextToRichEdit(s_buff); // просто добавление текста
}
}
__________________


snow white world wide
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
smtp на MFC LordNet С/С++, C#, Delphi, .NET, Asm 2 15.05.2006 21:43



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ