What does = "GetEnvironmentVariableA@12" mean?
BlitzMax Forums/BlitzMax Programming/What does = "GetEnvironmentVariableA@12" mean? This is needed for visual studio compiled dlls.
Thats a name sheme thing of win32 librarys.
What it actually means is that the function takes 12bytes of input. byte ptr, byte ptr, int in this case
Thats a name sheme thing of win32 librarys.
What it actually means is that the function takes 12bytes of input. byte ptr, byte ptr, int in this case
Hmm OK thanks, so I've got a lot of Win32 externs I've collected and some use that ="blah@N" thing after the function declaration but many don't. Do some need it and others not or maybe none really need it?
Its a name-decoration for the stdcall calling convention, when making the DLL some compilers allow you to remove it or redefine the name without it.
Edit: Most times Extern "Win32" will get the name right anyway, you really only need the "GetEnvironmentVariableA@12" if you want to name the function something different.
Edit: Most times Extern "Win32" will get the name right anyway, you really only need the "GetEnvironmentVariableA@12" if you want to name the function something different.
some also contain 2 sets of functions one for (Unicode = GetEnvironmentVariableW@12) and one for (ANSI = GetEnvironmentVariableA@12)
Aha so W means Wide and A means Ansi, got it.