I believe you have to use ms comm control
Here is some information
MS Comm Control
The MS Comm control comes with Visual Basic. This one came with VB
6.0. We have a license to distribute this OCX with our Visual Basic application. We have tried in to get a clarification from Microsoft if it is OK to distribute stand alone. We asked: "Do we have the right to distribute the MS Comm control which comes with Visual Basic with an Access application?" When this question was asked of the MS Access technical support people we could not find anyone that knew what the MS Comm control is. The closest we got was someone that thought we were talking about the Common Dialog control. It is our assumption that because we have the right to distribute this with a VB
application we also should have the right to distribute it stand-alone.
This is the MSCOMM32.OCX that should be stored in your \windows\system directory.
To register within Access go to TOOLS/ACTIVE X CONTROLS and select \windows\system\mscomm32.ocx or Microsoft Communications Control and click on the REGISTER button.
If you get a licensing error the only way we know to get the licensing is to install VB
6 Professional. Microsoft Technical Support and Sales Staff was of no use when we tried find out how to register or purchase the Comm control.
Download Now mscomm.zip 50K bytes
Private Sub MSComm1_OnComm()
Select Case MSComm1.CommEvent
Case comEventBreak ' A Break was received.
Case comEventCDTO ' CD (RLSD) Timeout.
Case comEventCTSTO ' CTS Timeout.
Case comEventDSRTO ' DSR Timeout.
Case comEventFrame ' Framing Error.
Case comEventOverrun ' Data Lost.
Case comEventRxOver ' Receive buffer overflow.
Case comEventRxParity ' Parity Error.
Case comEventTxFull ' Transmit buffer full.
Case comEventDCB ' Unexpected error retrieving DCB]
Case comEvCD ' Change in the CD line.
Case comEvCTS ' Change in the CTS line.
Case comEvDSR ' Change in the DSR line.
Case comEvRing ' Change in the Ring Indicator.
Case comEvReceive ' Received RThreshold # of chars.
'Sets the global mstinbuff to = what is received by the commm control
mstInBuff = mstInBuff & MSComm1.Input
'Resets the variable used to count the lack of response to 0 so that
mdblReceived = 0