winbase.h
をコンパイルすると、Windowsファイルで次のエラーが発生します。
構文エラーが発生し、コンパイラーにさらに多くのエラーが表示される理由がわかりません。
1> c:\program files\Microsoft sdks\windows\v6.0a\include\winbase.h(238) :
error C2146: syntax error : missing ';' before identifier 'Internal'
ここに問題を再現するための簡単なコードがあります:
#include <winbase.h>
int main()
{
return 0;
}
<winbase.h>
を直接含めていますか?
すべきではありません-処理される前に、いくつかのことが定義/宣言されることを期待しています。具体的には、この場合、ULONG_PTR
でtypedefとして宣言されている識別子intsafe.h
です。
<windows.h>
を含めます。
コードの;
行の直前に#include <windows.h>
がない可能性があります。または、インクルードファイルの行の前に識別子のようなテキストがあります。
int ABC
#include <windows.h>
コードに問題がなく、#include "winbase.h"
の前にセミコロンがない場合は、winbase.h
(またはそれを含むファイルの1つ)の前にインクルードがないはずです。