Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Com порт 
:(
    Опции темы
Diiana
Дата 9.8.2007, 09:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 57
Регистрация: 13.7.2007

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



Здравствуйте! Очень нужна помощь!Ситуация такая:
При нажатии на кнопку открывается Com порт и я записываю и читаю данные с терминала с помощью 2-х потоков
void CMainDataDlg::OnBnClickedOpencom()
{
    DCB dcb;
    memset (&dcb, 0, sizeof (DCB));
    dcb.DCBlength = sizeof (DCB);
    dcb.BaudRate = CBR_9600;
    dcb.fParity = FALSE;
    dcb.ByteSize = 8;
    dcb.Parity = NOPARITY;
    dcb.StopBits = ONESTOPBIT; 
    
port=CreateFile("COM1", GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
if(port==INVALID_HANDLE_VALUE)
{
AfxMessageBox("Не возможно открыть последовательный порт");

}
else
{
    //AfxMessageBox(" Порт открыт");
    dcb.fDtrControl = DTR_CONTROL_ENABLE;
    dcb.fRtsControl = RTS_CONTROL_ENABLE;
    SetCommState (port, &dcb);
    dcb.fDtrControl = DTR_CONTROL_DISABLE;
    dcb.fRtsControl = RTS_CONTROL_ENABLE;
    SetCommState (port, &dcb);
    SetTimer(1, 100, NULL);
     
    WriteWinThread = ::AfxBeginThread(WriteDataComPort, NULL);
    ReadWinThread = ::AfxBeginThread(ReadDataComPort, NULL);
}

}

Но когда port==INVALID_HANDLE_VALUE я уже не могу ни читать , ни записывать данные. Я пробовала делать CloseHandle(port);, но при повторном открытии у меня всё равно port==INVALID_HANDLE_VALUE. Я могу читать и записывать данные снова в том случае если закрою и открою заново программу. Как мне не закрыв программу избавиться от этой проблемы?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




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


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

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