WIN API serial
tiszaii
tiszaii at axelero.hu
Tue Jun 15 10:46:34 CEST 2004
> Van ra lehetoseg, hogy az elveszett soros kapcsolatot, amirol a win2000 ugy latja, hogy en
> foglaltam le, de a programom mar nem tud vele mit kezdeni, (lezaras, ujra megnyitas nem
> segit,) ujra inicializalja valami API-s mesterkedes? Pontositva: ha tuloldali hw okok miatt
> lefoglalva marad egy com port, azt csak ujra inditassal lehet eletre kelteni, programbol nem lehet
> valami hatarozottabb osztokelessel resetelni?
BOOL CloseHandle(HANDLE hObject);
Ha nullával tér vissza akkor nem tudta lezárni a portot, ekkor
meghivod a DWORD GetLastError(void), ez megadja hogy mi volt a baj.
pl. igy
void error(LPSTR lpszFunction)
{
CHAR szBuf[80];
DWORD dw = GetLastError();
sprintf(szBuf, "%s failed: GetLastError returned %u\n",
lpszFunction, dw);
MessageBox(NULL, szBuf, "Error", MB_OK);
ExitProcess(dw);
}
Általában akkor nem zárja le a portot a CloseHandle)..), ha
a hObjct handle kezelő thread még fut és közben akarod
lezárni a portor, először a threadet kell lezárni/megszüntetni, persze
ha használsz thread-et.
--
Tiszai Istvan
http://tiszaii.fw.hu
More information about the Elektro
mailing list