Opening a Port

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

  1. Insert a colon after the communication port pointed to with the first parameter, lpzPortName. For example, specify "COM1:" as the communication port.
  2. Specify zero in the dwShareMode parameter. Communication ports cannot be shared in the same manner that files are shared.
  3. Specify OPEN_EXISTING in the dwCreationDisposition parameter. This flag is required.
  4. Specify zero in the dwFlagsAndAttributes parameter. Windows 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 may not be suitable for the device at the other end of the connection. The next section discusses serial port configuration settings.