[ lenny @ 14.01.2004. 09:08 ] @
Mobilni uredjaj Trimble GeoExplorer GeoXT (integrisani GPS prijemnik) ima instaliran Windows CE 3.0 (build 26), OS Rev 1.10.00. Koristim Embedded C++ 3.0, bez emulatora, direktno testiram na uredjaju.
Probavao sam pristupiti njegovom COM portu, bez mnogo uspeha. Kod je sledeci (radi na obicnom Windows-u, navodno bi trebalo da radi i na CE):

HANDLE hComm;
hComm = CreateFile( L"COM2",
GENERIC_READ|GENERIC_WRITE,
0,
0,
OPEN_EXISTING,
FILE_FLAG_OVERLAPPED,
NULL);
if (hComm == INVALID_HANDLE_VALUE)
{
// error opening port; abort
MessageBox(NULL,L"Connection to COM2 failed",L"Connection problem",MB_OK);
}



Stalno dobijam error code 87 - invalid parameter. Cini mi se da ga muci FILE_FLAG_OVERLAPPED, jer sa FILE_FLAG_NORMAL bez problema napravi prazan fajl...
[ Alex21 @ 28.03.2006. 09:46 ] @
Mislim da se u WindowsCE serijski portovi enumeriraju sa COMx: ,
tako da probaj
CreateFile( L"COM2",... promijeniti u CreateFile( L"COM2:",...
[ srdjandakic @ 28.03.2006. 16:28 ] @
Probaj ovako ... com_port_num je 1 za COM1 , itd.


TCHAR com[20];

wsprintf(com, TEXT("COM%d:"), com_port_num);

hComm = CreateFile(com,
GENERIC_READ | GENERIC_WRITE,
0, 0, OPEN_EXISTING, 0, 0);