Opening a Port
Other versions of this page are also available for the following:
8/28/2008
Call the CreateFile function to open a serial port.
Because hardware vendors and device driver developers can give any name to a port, an application should list the available ports and enable users to specify the port to open.
If a port does not exist, CreateFile returns ERROR_FILE_NOT_FOUND, and users should be notified the port is not available.
To open a serial port
Insert a colon after the communication port pointed to with the first parameter, lpzPortName.
For example, specify COM1: as the communication port.
Specify zero in the dwShareMode parameter unless you are using a driver that supports multiple opens.
Only one device can perform read/write or any operation that changes the behavior of the port. Other applications can perform operations such as port monitoring or controlling line status.
Specify OPEN_EXISTING in the dwCreationDisposition parameter.
This flag is required.
Specify zero in the dwFlagsAndAttributes parameter.
Windows Embedded CE supports only nonoverlapped I/O.
The following code example shows how to open a serial communications port.
// Open the serial port.
hPort = CreateFile (lpszPortName, // Pointer to the name of the port
GENERIC_READ | GENERIC_WRITE,
// Access (read-write) mode
0, // Share mode
NULL, // Pointer to the security attribute
OPEN_EXISTING,// How to open the serial port
0, // Port attributes
NULL); // Handle to port with attribute
// to copy
Before writing to or reading from a port, configure the port.
When an application opens a port, it uses the default configuration settings, which might not be suitable for the device at the other end of the connection.