Cycling74/max-sdk

WIN32 defined for 64-bit build

andreaagostini opened this issue · 2 comments

Hi,

in the preprocessor definitions of dummy.vcxproj, WIN32 is defined for x64 as well. I haven't looked at other projects, but I suspect it's there. I see that the C74_X64 macro is based upon _WIN64 (with the underscore), but this seems to suggest it should be based upon WIN64 (no underscore) instead, if I understand correctly: https://stackoverflow.com/questions/17380340/win32-preprocessor-definition-in-64bit-windows-platform

I'm not going to change this in my own projects as everything seems to be working ok, but I'm curious whether it's intentional or not...

Best,
andrea

tap commented

Hi @andreaagostini ...

Yes, this is an unfortunate historical appendage. WIN32 simply means Windows regardless of the CPU architecture. It was named such before we had 64-bit architectures in our PCs.

So a combination of WIN32 and C74_X64 is needed to determine if you are on 32-bit or 64-bit Windows.

Ok, got it. Thanks!