I have to include "windows.h".The problem is redefinition,
_gdi_entry WINGDIAPI BOOL WINAPI Polygon(__in HDC hdc, __in_ecount(cpt)
CONST POINT *apt, __in int cpt);
typedef struct Polygon
#undef Polygon won't work because
Polygon() is a real function, not a macro. In Windows, that trick mostly works for functions that takes at least one string argument, because of the Unicode vs ANSI stuff.
If you only want the
ShellExecute() function you can omit all the GDI functions by defining
NOGDI before including
#define NOGDI #include <windows.h>
Alternatively you can add the
NOGDI macro to the preprocessor project options of your IDE.