1

Microsoft Visual C++ Express 2012 を使用しています。ヘッダー設定の一部として次のものがあります。

#include <windows.h>
#include <Ole2.h>

単独でインクルードwindows.hするとビルド エラーは発生しませんが、インクルードOle2.hの有無にwindows.hかかわらずwindows.h、次のコンパイラ エラーが発生します。

Error   1   error C2628: '_RPC_ASYNC_NOTIFICATION_INFO::$UnnamedClass$0x1c06c483$29$' followed by 'int' is illegal (did you forget a ';'?)  C:\Program Files (x86)\Windows Kits\8.0\Include\shared\rpcasync.h   127 1   Test`

何がうまくいかないのでしょうか?最終的に、Kinect とやり取りするための簡単なコードを書き込もうとしていますが、Kinect のインクルードがなくても上記のエラーが生成されます。

エラーをダブルクリックするrpcasync.hと、次のコードが表示されます。

#if !defined(RPC_NO_WINDOWS_H)
//
// Notification by window message
//
struct {
    HWND hWnd;
    UINT Msg;
    } HWND;     //<<<-------- the error points here (HWND is underlined in red)

#endif // RPC_NO_WINDOWS_H

PS私がまったく含めている理由は、このチュートリアルOle2.hに従っているからです。

4

0 に答える 0