If C2872 error "ambiguous symbol" occurs due to
#include <Windows.h>
I though that adding
namespace Win32API {
#include <Windows.h>
}
and using Win32API::DWORD, for example, instead of DWORD will solve the problem.
Sometimes solved, sometimes unsolved.
Conflict of other library: Changing the order of including might solves the problem. When using both OpenCV and Windows.h, including the Windows.h before OpenCV solves the problem.