C++;使用CreateFile从串行端口读取数据 我写了一个C++程序,从串口读取(在我的情况下是COM6)。打开COM端口。我总是在互联网上找到以下代码: HANDLE serialHandle; serialHandle = CreateFile(L"COM6", GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);

C++;使用CreateFile从串行端口读取数据 我写了一个C++程序,从串口读取(在我的情况下是COM6)。打开COM端口。我总是在互联网上找到以下代码: HANDLE serialHandle; serialHandle = CreateFile(L"COM6", GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);,c++,sdk,serial-port,visual-studio-2017,createfile,C++,Sdk,Serial Port,Visual Studio 2017,Createfile,我的问题是,我得到以下错误: “句柄”:找不到标识符 “CreateFile”:找不到标识符 “泛型读取”:未声明的标识符 “无效的\u句柄\u值”:未声明的标识符 我的代码: #include <windows.h> #include "stdafx.h" #include <iostream> #include <string> #include <tchar.h> #include <stdio.h> #include &l

我的问题是,我得到以下错误:

  • “句柄”:找不到标识符
  • “CreateFile”:找不到标识符
  • “泛型读取”:未声明的标识符
  • “无效的\u句柄\u值”:未声明的标识符
我的代码:

#include <windows.h>
#include "stdafx.h"
#include <iostream>
#include <string>
#include <tchar.h>
#include <stdio.h>
#include <strsafe.h>
using namespace std;


int main()
{
    /*int comPortNmr = 6, speed = 115200;
    cout << "Serial Line: > ";
    cin >> comPortNmr;
    cout << endl;
    cout << "Speed: > ";
    cin >> speed;
    cout << endl; */

    HANDLE serialHandle;
    // Open serial port
    serialHandle = CreateFile(L"COM6", GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);

    if (serialHandle == INVALID_HANDLE_VALUE)
    {
        cout << "Error." << endl;
    }
    else
    {
        cout << "Opend." << endl;
    }

    return 0;
}
#包括
#包括“stdafx.h”
#包括
#包括
#包括
#包括
#包括
使用名称空间std;
int main()
{
/*int comPortNmr=6,速度=115200;
cout>comPortNmr;
速度;

cout如果在未调整设置的情况下安装VS'17,则不会安装Windows SDK


请重新检查您的VS'17安装并安装相应的Windows SDK。

如果您安装VS'17而未调整设置,则Windows SDK将不会安装


请重新检查您的VS'17安装并安装相应的Windows SDK。

如果您使用的是预编译标头,则任何小于或包括
#include“stdafx.h”
行的内容都应该已经是预编译标头的一部分。因此编译器将跳过这些内容


因此,请确保
#include“stdafx.h”
始终是的第一个
#include
如果您使用的是预编译头,那么任何小于或包含行
#include“stdafx.h”
的内容都应该已经是预编译头的一部分。因此编译器将跳过该行


因此,请确保
#包含“stdafx.h”
始终是第一个
#include

无法复制。您使用的是什么IDE/编译器?是否安装了相应的Windows SDK?我使用的是默认的Visual Studio 2017 IDE/编译器。我没有更改设置中的任何内容。@User987123如果您在未调整设置的情况下安装VS'17,则Windows SDK将不会安装。请调整您的设置,然后重试。无法复制。您使用的是什么IDE/编译器?是否安装了相应的Windows SDK?我使用的是默认的Visual Studio 2017 IDE/编译器。我在设置中没有更改任何内容。@User987123如果您在不调整设置的情况下安装VS'17,则会获得胜利dows SDK将不会安装。请调整您的设置,然后重试。有一些Windows SDK的小屏幕截图。我正在使用Windows 7,但在Visual Studio安装程序中,我只能安装适用于Windows 10的SDK。现在该怎么办?@User987123安装最新的10或8.1。目前无法确切地告诉您需要哪一个。它将在Windows 10上工作s 7.我已经安装了SDK,在项目设置中我将其更改为新的SDK版本,但它仍然不工作。有一些Windows SDK的小屏幕截图。我正在使用Windows 7,但在Visual Studio安装程序中,我只能安装适用于Windows 10的SDK。现在该怎么办?@User987123安装最新的10或8.1。目前无法安装我会告诉你你到底需要哪一个。它可以在Windows 7上运行。我已经安装了SDK,并且在项目设置中我将其更改为新的SDK版本,但它仍然不工作。