Allora ho scaricato i file .h e .cpp relativi alla classe CSerial, ma mi da alcuni errori in fase di compilazione all'interno del file .cpp
Vi posto solo il codice relativo alle righe che danno errore e poco altro, così da non inserire cose inutili:
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <sstream>
#include <string>
#include <stdio.h>
#include <windows.h>
#include "CSerial.h"
CSerial::CSerial()
{
....
....
if (m_bOpened) return(TRUE);
char szPort[15];
char szComParams[50];
DCB dcb;
wsprintf(szPort, "COM%d", nPort); // ERRORE!!!!!!!
m_hIDComDev = CreateFile(szPort, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED, NULL);
if (m_hIDComDev == NULL) return(FALSE); // ERRORE!!!!!!
memset(&m_OverlappedRead, 0, sizeof(OVERLAPPED));
memset(&m_OverlappedWrite, 0, sizeof(OVERLAPPED));
COMMTIMEOUTS CommTimeOuts;
CommTimeOuts.ReadIntervalTimeout = 0xFFFFFFFF;
CommTimeOuts.ReadTotalTimeoutMultiplier = 0;
CommTimeOuts.ReadTotalTimeoutConstant = 0;
CommTimeOuts.WriteTotalTimeoutMultiplier = 0;
CommTimeOuts.WriteTotalTimeoutConstant = 5000;
SetCommTimeouts(m_hIDComDev, &CommTimeOuts);
wsprintf(szComParams, "COM%d:%d,n,8,1", nPort, nBaud); // ERRORE!!!!!!!!
...
...
...
Gli errori sono tutti e 3 di questo tipo':
- impossibile convertire l'argomento 1 da 'char [15]' a 'LPCWSTR'
Sembra che le parole incriminate siano: "szPort", "COM%d", "szComParams", "COM%d:%d,n,8,1".
Sapreste dirmi dove ho sbagliato?Io ho semplicemente scaricato questi due file e inseriti nel mio progetto (che al momento è ancora vuoto).
Grazie