Понятно
А то простейший код
#include "stdafx.h"
#include "windows.h"
#include "iostream.h"
void main()
{
HANDLE hCOM=CreateFile("COM1", GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_FLAG_OVERLAPPED, 0);
if (hCOM!=INVALID_HANDLE_VALUE)
{
cout << " Ok Open COM1" << endl;
char buffer[25];
memset(buffer,0,sizeof(buffer));
strcpy(buffer,"Hello COM ");
DWORD dw;
OVERLAPPED ov;
for (int x=0;x < 3;x++)
if(!WriteFile(hCOM,buffer,sizeof(buffer),&dw,&ov))
{
cout << "\nImpossible to write to port!" << endl;
}
CloseHandle(hCOM);
}
else cout << "Error Open" << endl;
}
Выдаёт : Impossible to write to port!
Хотя, если делать без FILE_FLAG_OVERLAPPED, т.е. в синхронном режиме, то всё проходит без ошибок.