USB HID デバイスから読み込もうとしています。DLLImport hid.dll を使用して C# で実行する方法は知っていますが、C++ から実行したいので、すべての構造体を宣言する必要がありません。ヘッダーファイルを含めるだけです。
そのため、 WDKをダウンロードし、ヘッダー ファイルを含めてライブラリをリンクすると、多くのエラーが発生します。
#include <windows.h>
extern "C" {
#include <hidsdi.h>
}
int main(){
}
エラー (163 のうち 6):
Error 1 error C2065: 'PASSIVE_LEVEL' : undeclared identifier c:\winddk\7600.16385.1\inc\api\hidpi.h 302 driver
Error 2 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\winddk\7600.16385.1\inc\api\hidpi.h 303 driver
Error 3 error C2146: syntax error : missing ';' before identifier 'NTSTATUS' c:\winddk\7600.16385.1\inc\api\hidpi.h 303 driver
Error 4 error C2143: syntax error : missing ';' before '__stdcall' c:\winddk\7600.16385.1\inc\api\hidpi.h 303 driver
Error 5 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\winddk\7600.16385.1\inc\api\hidpi.h 303 driver
Error 6 error C2377: 'NTSTATUS' : redefinition; typedef cannot be overloaded with any other symbol c:\winddk\7600.16385.1\inc\api\hidpi.h 303 driver
OK、Windows SDKもアップグレードする必要があることをどこかで読みました。Microsoft Windows SDK v6.0Aがあり、Windows SDK v7.0をダウンロードしてインストールしました。しかし、今では 2 つの SDK があるように見えますか? Visual Studio で SDK のアップグレードを適切に行うにはどうすればよいですか?
大変お世話になりました。
ありがとう、カルロス