Глюк с BuildCommDCB и BuildCommDCBAndTimeouts
От: Виктор Зуев Россия  
Дата: 27.05.03 06:26
Оценка:
Здравствуйте.
Возникла следующая проблемма:
При вызове BuildCommDCB или BuildCommDCBAndTimeouts под Win98 (WinXP и 2000 OK)
одна из версий Debug или Release (а иногда и обе) вылетают с
сообщением "Программа выполнила недопустимую..." Короче ошибка в kernel32.dll.
Пытался перехватить exception, но не получилось.
Среда разработки Visual C++ 7.0.
Код примерно такой:
    DCB dcb;
    COMMTIMEOUTS timeouts;
    ZeroMemory(&dcb, sizeof(DCB));
    ZeroMemory(&timeouts, sizeof(COMMTIMEOUTS));
    dcb.DCBlength = sizeof(DCB);
    try
    {
        BuildCommDCBAndTimeouts("baud=9600 parity=N data=8 stop=1 to=on", &dcb, &timeouts);
    }catch(...){MessageBox(NULL, "Error", "Error", NULL);}

Вопросы собственно следующие:
1) Почему прога вылетает?
2) Почему не ловится excepton?

Заранее спасибо за ответы.
... << RSDN@Home 1.0 beta 7a >>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.