title: Open a COM port in C++ with number higher that 9
body: <p>I am using a COM port in C++. I can not open COM ports with a higher number than 9, for example 10. This is function used for COM port detection:</p>
  
  <pre><code>WCHAR port_name[7];
  WCHAR num_port[4];        
  
  for (i=1; i&lt;256; i++)
  {
      bool bSuccess = false;
  
      wcscpy(port_name,L"COM");
      wcscat(port_name,_itow(i,num_port,10));
  
      HANDLE hPort;
  
      //Try to open the port
      hPort = CreateFile(L"COM10", GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, 0, 0);
      //hPort = CreateFile(port_name, GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, 0, 0);
  
      if (hPort == INVALID_HANDLE_VALUE)
      {
          DWORD dwError = GetLastError();
  
          //Check to see if the error was because some other application had the port open
          if (dwError == ERROR_ACCESS_DENIED)
          {
              bSuccess = TRUE;
              j=j+1;  
          }
      }
      else   //The port was opened successfully
      {            
          bSuccess = TRUE;
          j=j+1;
  
          CloseHandle(hPort);   //closing the port
      }
  
      if (bSuccess)array_ports[j]=i;
  
  }
  </code></pre>
  
  <p>I can not understand why for example COM10, throws FFFFFFFF back to HANDLE hPort.</p>
  
  <pre><code>hPort = CreateFile(L"COM10", GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, 0, 0);
  </code></pre>
  
  <p>COM9, COM8, COM7, etc. works fine,</p>
  
  <pre><code>hPort = CreateFile(L"COM9", GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, 0, 0);
  </code></pre>
  
  <p>It there a solution for this problem?</p>