LOCAL oComm, i, cOldErrorHandler DECLARE aComPorts[16] aComPorts = .T. cOldErrorHandler = ON('ERROR') FOR i = 1 TO 16 oComm = CREATEOBJ('MsCOMMLib.Mscomm') oComm.CommPort = i ON ERROR aComPorts[i] = .F. oComm.PortOpen = .T. oComm.PortOpen = .F. oComm = NULL ON ERROR &cOldErrorHandler ENDFOR For i = 1 TO 16 IF aComPorts[i] MESSAGEBOX([Comm Port ] + ALLTRIM(STR(i)) + [ is valid]) ENDIF ENDFORYour help will be apprecited. Thanking you.