0

最新の U3D ソフトウェアで宣言された型を認識しないようなプログラムがあります。線があります

typedef BOOL (WINAPI* GMI)(HMON, LPMONITORINFOEX);

エラーが発生します:

エラー 1 エラー C2061: 構文エラー: 識別子 'LPMONITORINFOEX' c:\Projects\U3D\Source\RTL\Platform\Common\Win32\IFXOSRender.cpp 28

と一行

MONITORINFOEX miMon;

取得する

エラー 5 エラー C2065: 'miMon': 宣言されていない識別子 c:\Projects\U3D\Source\RTL\Platform\Common\Win32\IFXOSRender.cpp 49 エラー 3 エラー C2065: 'MONITORINFOEX': 宣言されていない識別子 c:\Projects\U3D\ソース\RTL\プラットフォーム\共通\Win32\IFXOSRender.cpp 49

プログラムの最初の非コメント ステートメントは、これらの識別子を定義する#include <windows.h>を含むです。winuser.hVisual Studio では、それらを右クリックして定義 (typedef) に移動し、typedef から構造体に移動できます。 WINAPIで定義されWinDef.hているので、うまくいっているようです。LPMONITORINFOEXまたはの再定義はMONITORINFOEX、他のファイルにはありません。

では、これはどのように発生するのでしょうか。また、どうすればよいでしょうか。

4

1 に答える 1

1

私の推測では、あなたの WINVER 定義に問題があると思います。winuser.h を見ると、これらはブロックでのみ定義されています。

#if(WINVER >= 0x0500)

WINVER が正しく設定されていない可能性はありますか?

于 2010-05-11T15:00:31.697 に答える