この投稿と同じ問題があります。
基本的に、を使用する PIN ツールをコンパイルしようとしていますPython.h
。
Windows.h
同じと呼ばれるいくつかのタイプがありPIN.h
、それらのいずれかがそれらの名前空間を宣言しているので、error C2872: 'UINT32' : ambiguous symbol
問題は、私のPINツールがPIN.h
and Python.h
(同時にインポートするWindows.h
)をインポートし、両方が同じ名前のタイプを持っていることですそのため、コンパイラはそれぞれがどのタイプであるかを認識せず、あいまいなシンボルエラーが発生します
私は解決策を使うことができません:
namespace WINDOWS
{
#include <Windows.h>
}
また
namespace PIN
{
#include <PIN.h>
}
名前を変更する必要があるそれらへの参照が多すぎて混乱するためです (PIN および Windows.h ライブラリはUINT32
何CONTEXT
度も使用します)。
これを修正するエレガントな方法はありますか?