Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Mailslot, Mailslot i messenger 
:(
    Опции темы
Гость_Raven
Дата 12.10.2003, 18:11 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Ljudi, vopros takoj, dolyhen li viskakivatj v Win2k messaga poslannaja messengeru cherez mailslot? Po ideje dolzhna, noposle posilki messagi, u kompa (messenger)nikakoj rakcii, budto ja jemu ne poslal messagu, naskolko ja znaju messenger podderzhivajet mailslots tozhe, a ne tolko svoju tehnologiju. kod sledujuschij, posmotrite mozhet kto nitj znajet v chjem oshibka, mne uzhe nadojelo bitsja s messengerom, chto bi on schitival moi soobschenija. Ne iskljucheno chto v kode mnogo lishnih peremennih, ja tut uzhe neskolko dnej eksperementiruju, tak chto kod ne optimizirovan. Zaraneje spasibo.
[CODE]
LPVOID lpMsgBuf;
char *s="From\n\To\nMessage\n";
DWORD dwwr=sizeof(s);

hSlot=NULL;

UserMessage->Width=MessagePanel->Width;

CharToOemBuff(s,s, strlen(s)+1);

hSlot=CreateFile("\\\\*\\mailslot\\messngr",GENERIC_WRITE,FILE_SHARE_READ,
(LPSECURITY_ATTRIBUTES) NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,(HANDLE)NULL);
// hSlot=CreateMailslot("\\\\.\\mailslot\\messngr", 0, MAILSLOT_WAIT_FOREVER, 0);
if (hSlot == INVALID_HANDLE_VALUE){
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER |FORMAT_MESSAGE_FROM_SYSTEM |FORMAT_MESSAGE_IGNORE_INSERTS, NULL, GetLastError(),MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR) &lpMsgBuf,0, NULL);
Application->MessageBox((LPCTSTR)lpMsgBuf, "Error", MB_OK);
}
else{
if(!WriteFile(hSlot,s, dwwr+1, &dwwr, NULL)){
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER |FORMAT_MESSAGE_FROM_SYSTEM |FORMAT_MESSAGE_IGNORE_INSERTS, NULL, GetLastError(),MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR) &lpMsgBuf,0, NULL);
Application->MessageBox( (LPCTSTR)lpMsgBuf, "Error", MB_OK);
}
else{
if(!CloseHandle(hSlot)){
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER |FORMAT_MESSAGE_FROM_SYSTEM |FORMAT_MESSAGE_IGNORE_INSERTS, NULL, GetLastError(),MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR) &lpMsgBuf,0, NULL);
Application->MessageBox( (LPCTSTR)lpMsgBuf, "Error", MB_OK);

}
}
}

  Вверх
knave
Дата 22.10.2003, 11:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 320
Регистрация: 6.3.2003
Где: Санкт-Питербург ( Россия)

Репутация: 1
Всего: 5



Ты случаем не из общаги политеха 6ф


--------------------
С наилучшими пожеланиями !!!
PM MAIL ICQ   Вверх
SCHEPA
Дата 22.10.2003, 21:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 174
Регистрация: 7.6.2003
Где: Н.Н.

Репутация: нет
Всего: нет



Цитата
char *s="From\n\To\nMessage\n";

Разделять надо не "\n", а "<!--POST BOX-->"
--------------------
Так что в лучших книгах всегда нет имен...
PM MAIL   Вверх
SCHEPA
Дата 22.10.2003, 21:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 174
Регистрация: 7.6.2003
Где: Н.Н.

Репутация: нет
Всего: нет



Всмысле
Код
char str[]="From\0\To\0Message\0";

--------------------
Так что в лучших книгах всегда нет имен...
PM MAIL   Вверх
knave
Дата 23.10.2003, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 320
Регистрация: 6.3.2003
Где: Санкт-Питербург ( Россия)

Репутация: 1
Всего: 5



Только при этом ненадо забвать о том что все стандартные функции работы со строками воспринимают ее до \0. Следовательно разбрать это на отдельные строки можно с помощью memcpy начиная от первого параметра (используя его длинну). и таким макаром добраться до второго и последнего


--------------------
С наилучшими пожеланиями !!!
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0552 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.