Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Сокеты в приложении с формой / 5 сообщений из 5, страница 1 из 1
16.07.2014, 13:04
    #38697805
Картежник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сокеты в приложении с формой
Незнаю куда поставить кусок кода, который бы проверял пришло ли сообщение по сети. ставлю как показано ниже, прогармма получает и отвечает на сообщение,но при этом само окно висит
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
 ......
while (GetMessage (&messages, NULL, 0, 0))
    {
        /* Translate virtual-key messages into character messages */
        TranslateMessage(&messages);
        /* Send message to WindowProcedure */
        DispatchMessage(&messages);
        
       if (serv1.is_acc()==-1){
        serv1.cl_sock.msg.text="HELLO";
        serv1.sendmess();
       }
    }
.....


Функция is_acc()
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
int tmyserv::is_acc(){
int client_addr_size=sizeof(client_addr);
if (cl_sock.sock=accept(serv_sock, (sockaddr *) &client_addr, &client_addr_size)){
if (cl_sock.sock!=INVALID_SOCKET) {                              
return -1;
}
}
return 0;    
};
...
Рейтинг: 0 / 0
16.07.2014, 13:08
    #38697813
Картежник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сокеты в приложении с формой
КартежникНезнаю куда поставить кусок кода, который бы проверял пришло ли сообщение по сети. ставлю как показано ниже, прогармма получает и отвечает на сообщение,но при этом само окно висит

Точнее не получает сообщение, а получает сигнал что клиент обратился к серверу
...
Рейтинг: 0 / 0
16.07.2014, 14:27
    #38697965
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сокеты в приложении с формой
Ну и выкинь эту хрень, стартуй нормальный отдельный поток для работы с сокетами.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
16.07.2014, 14:47
    #38697990
Картежник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сокеты в приложении с формой
ОК спасибо. понял теперь
сделал так
Функция newpotok
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
DWORD WINAPI newpotok(LPVOID serv){
    tmyserv serv1;
    serv1=((tmyserv *)serv)[0];
    while(1){
    if(serv1.is_acc()==-1){
        serv1.cl_sock.msg.text="HELLO";
        serv1.sendmess();
    }
    }
}


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
...
CreateThread(0,0,newpotok,&serv1,0,0);
    while (GetMessage (&messages, NULL, 0, 0))
    {
        /* Translate virtual-key messages into character messages */
        TranslateMessage(&messages);
        /* Send message to WindowProcedure */
        DispatchMessage(&messages);

    }
...



теперь работает
...
Рейтинг: 0 / 0
16.07.2014, 16:25
    #38698103
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сокеты в приложении с формой
Dimitry SibiryakovНу и выкинь эту хрень, стартуй нормальный отдельный поток для работы с сокетами.


Можно делать также обработку ввода-вывода с сокетами через асинхронный ввод-вывод.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Сокеты в приложении с формой / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]