OnHandFlow Event in Virtual Serial Port ActiveX Control

The OnHandFlow event occurs when other application changes flow control parameters for virtual serial port.

OnHandFlow(
  	LONG ControlHandShake, 	// Handshake control parameter
  	LONG FlowReplace, 	// Flow control parameter
  	LONG XOnLimit, 	// Flow control parameter
  	LONG XOffLimit 	// Flow control parameter
);

Parameters:

  • ControlHandShake [out] : ControlHandShake is a set of flags that defines the modem lines that are used for flow control. Can be combination of the following flags:
    Value Meaning Hex
    SERIAL_DTR_CONTROL Enables the DTR line when the device is opened and leaves it on.
    0x01
    SERIAL_DTR_HANDSHAKE Use the modem signal DTR for input flow control. For the real serial port the DTR line is cleared by
    the controller if the receive buffer reaches the programmed high water mark.
    See also description of XonLimit and XoffLimit.
    0x02
    SERIAL_CTS_HANDSHAKE Use the modem signal CTS, DCD or DSR respectively for output flow control.
    For the real serial port if the corresponding modem line(s) found as cleared, the controller will hold data transmission.
    0x08
    SERIAL_DCD_HANDSHAKE
    0x20
    SERIAL_DSR_HANDSHAKE
    0x10
    SERIAL_DSR_SENSITIVITY Ignore any character arriving when the DSR line is not set.
    0x40
    SERIAL_ERROR_ABORT If there exists an error condition the driver abort all read and writes to or from this port.
    0x80000000

     

  • FlowReplace [out] : FlowReplace is a set of flags defining flow control stuff. Can be combination of the following flags:
    Value Meaning Hex
    SERIAL_AUTO_TRANSMIT Use the XON/XOFF protocol based flow control for output.
    0x01
    SERIAL_AUTO_RECEIVE Use the XON/XOFF protocol based flow control for input.
    0x02
    SERIAL_ERROR_CHAR If set, the ErrorChar is placed in the stream of received characters on error conditions like buffer overflow, frame errors and so on.
    0x04
    SERIAL_NULL_STRIPPING If set, the reception of a NULL character is ignored.
    0x08
    SERIAL_BREAK_CHAR If set, the BreakChar is placed in the stream of received characters when a break condition was detected.
    0x10
    SERIAL_RTS_CONTROL Enables the RTS line when the device is opened and leaves it on.
    0x40
    SERIAL_RTS_HANDSHAKE Use the modem signal RTS for input flow control.
    0x80

     

  • XOnLimit [out] : Minimum number of bytes allowed in the input buffer before flow control is activated to inhibit the sender.
  • XOffLimit [out] : Maximum number of bytes allowed in the input buffer before flow control is activated to allow transmission by the sender.