BOOL SetPortTimeOuts( HANDLE hPort, LPCOMMTIMEOUTS lpCTO, DWORD reserved // must be set to 0 );
Sets time out values on an open port.
hPort | The handle of the port on which to set the time out values. |
lpCTO | Points to a communications timeout (COMMTIMEOUTS) structure that contains the timeout values to set. |
reserved | Reserved for future use. Must be set to 0. |
The COMMTIMEOUTS structure definition is shown below:
typedef struct _COMMTIMEOUTS { DWORD ReadIntervalTimeout; DWORD ReadTotalTimeoutMultiplier; DWORD ReadTotalTimeoutConstant; DWORD WriteTotalTimeoutMultiplier; DWORD WriteTotalTimeoutConstant; } COMMTIMEOUTS, *LPCOMMTIMEOUTS;
For a full definition of each of the members of the COMMTIMEOUTS structure, see the Win32 Software Development Kit (SDK). Brief definitions for each of the members of the COMMTIMEOUTS structure are:
ReadIntervalTimeout | Specifies the maximum time, in milliseconds, allowed to elapse between the arrival of two characters. A value of 0 indicates interval time-outs are not to be used. |
ReadTotalTimeoutMultiplier | The multiplier value, in milliseconds, used to calculate the total timeout period for read operations. For each read operation, this value is multiplied by the requested number of bytes. |
ReadTotalTimeoutConstant | The constant value, in milliseconds, used to calculate the total timeout period for read operations. For each read operation, this value is added to the product of the value in ReadTotalTimeoutMultiplier and the requested number of bytes. |
WriteTotalTimeoutMultiplier | The multiplier value, in milliseconds, used to calculate the total timeout period for write operations. For each write operation, this value is multiplied by the number of bytes to be written. |
WriteTotalTimeoutConstant | The constant value, in milliseconds, used to calculate the total timeout period for write operations. For each write operation, this value is added to the product of the value in WriteTotalTimeoutMultiplier and the number of bytes to be written. |