Ed's Faq does it for you:
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]
? [Comm Port ] + ALLTRIM(STR(i)) + [ is valid]
ENDIF
ENDFOR
>>Up to 16,
>>
>>FAQ #7943
>>
>>>Hi all,
>>>
>>>is there a vfp command that can give me the number of serial ports installed ?
>>>
>>>Best Regards,
>>>Hans
>
>Jim
>
>Is there a VFP command which can tell me what those ports are?
>
>Thanks
>
>Colin
.·*´¨)
.·`TCH
(..·*
010000110101001101101000011000010111001001110000010011110111001001000010011101010111001101110100
"When the debate is lost, slander becomes the tool of the loser." - Socrates
Vita contingit, Vive cum eo. (Life Happens, Live With it.)
"Life is not measured by the number of breaths we take, but by the moments that take our breath away." -- author unknown
"De omnibus dubitandum"