Comment lire les données série d’un port Bluetooth? C ++

J’ai créé un programme pour lire les données série à partir d’un port COM en utilisant C ++. Cependant, en raison de changements dans mon projet, je dois lire les données d’un port BT. Étant donné que j’utilise un adaptateur Bluetooth pour connecter mon ordinateur à l’appareil, je m’attendais à ce que le processus de lecture soit le même mais apparemment, ce n’est pas le cas. Étant donné que Im utilisant le système d’exploitation Windows pour effectuer cette tâche, GetLastError () renvoie 2, ce qui signifie que le fichier spécifié est introuvable. Cependant, lorsque j’utilise le moniteur série d’Arduino, les données sont lues correctement. Est-ce que quelqu’un sait lire depuis un port BT en C ++? Im utilisant Windows 8 par la voie, voici mon code:

#include "stdafx.h" int _tmain(int argc, _TCHAR* argv[]) { ///-----------------------------Open port----------------------------------------------------------------- // Name of port where device is found LPCWSTR port = L"COM40"; // Open port for reading HANDLE hComm = ::CreateFile(port, GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, 0, 0); // Check if port has been opened succesfully if (hComm == INVALID_HANDLE_VALUE) std::cout << "Failed to open " << port << " error: " << GetLastError() << std::endl; else std::cout << port << " has been opened succesfully\n"; ///-----------------------------Configure port------------------------------------------------------------ // Create DCB structure DCB dcb = { 0 }; // Get Comm state if (!::GetCommState(hComm, &dcb)) std::cout << "Failed to get Comm state, error: " << GetLastError() << std::endl; // Configure strcutre dcb.DCBlength = sizeof(DCB); // Set Baud rate dcb.BaudRate = CBR_9600; // Set number of bytes in bits that are recieved through the port dcb.ByteSize = 8; dcb.StopBits = ONESTOPBIT; // Check if port has been configured correctly if (!::SetCommState(hComm, &dcb)) std::cout << "\nFailed to set Comm State, error: " << GetLastError(); else std::cout << "Comm state has been set succesfully\n"; ///-----------------------------Read data------------------------------------------------------------------- char buffer; DWORD maxBytes = 1; if (!::ReadFile(hComm, &buffer, maxBytes, NULL, NULL)) std::cout << "\nFailed to read from " << port << " error: " << GetLastError() << std::endl; else std::cout << "File has been read succesfully\n"; ///-----------------------------Write to text file---------------------------------------------------------- std::fstream file; int counter = 0; // Writing to text file will be done later while (ReadFile(hComm, &buffer, maxBytes, NULL, NULL)) { std::cout << buffer; } ///-----------------------------Close port------------------------------------------------------------------ CloseHandle(hComm); file.close(); std::cout << "\nCOM40 has been closed!\n"; return 0; }