为什么从Microsoft SDK中包含BluetoothAPIs.h时会收到语法错误

Why do I receive syntax error when including BluetoothAPIs.h from Microsoft SDK?

本文关键字:错误 语法 BluetoothAPIs Microsoft SDK 包含 为什么      更新时间:2023-10-16

当我尝试包含BluetoothAPIs.h时,编译器会向我显示多个语法错误,例如:

[C++ Error] BluetoothAPIs.h(133): E2141 Declaration syntax error
[C++ Error] BluetoothAPIs.h(171): E2238 Multiple declaration for '__checkReturn'
...

这是CCD_ 2";无效";部分代码:

第132-138行:

__checkReturn
HBLUETOOTH_RADIO_FIND
WINAPI
BluetoothFindFirstRadio(
    __in const BLUETOOTH_FIND_RADIO_PARAMS * pbtfrp,
    __out HANDLE *                      phRadio
    );

第170-176行:

__checkReturn
BOOL
WINAPI
BluetoothFindNextRadio(
    __in  HBLUETOOTH_RADIO_FIND hFind,
    __out HANDLE * phRadio
    );

我从Microsoft SDK中获取的.h文件。

2021年更新日期:

我从未意识到错误的真正原因,但似乎使用Visual Studio而不是Dev-C++解决了问题。现在我想知道我应该改变什么才能让它在Dev-C++中工作?

当你说"我从Microsoft SDK中获得的.h文件"时,你的意思是:a) SDK安装在我的机器上,并且可以在我的IDE中访问?b) 我只拿起了这个文件?

如果b),那么你会丢失很多文件。。。

宏__checkReturn的第一个出现在BluetoothAPI.h的第132行,您提到的那个。。。