Хм... странно как то всё, т.к. я использую асинхронный режим работы последовательного порта и такую переменную как OVERLAPPED ,
и когда я писал в коде так:
.....
OVERLAPPED ovl;
.....
то приложение вылетало с эксепшеном, но но когда я писал так:
.....
OVERLAPPED ovl;
Zeromemory(&ovl, sizeof(ovl));
.....
то вылетать перестало
мистика !