In Go I was able to link to it without swig by removing the default arguments in AutoItX3_DLL.h (you can use this patch (you may need to convert the lines' ending)).
It seems the DLL is found, according to the 'Process Monitor' tool.
I'm able to use the same lib and DLL with Go. I'm wondering if there's a bug. Any ideas?
Most of the abis in this list are self-explanatory, but the system abi may seem a little odd. This constraint selects whatever the appropriate ABI is for interoperating with the target's libraries. For example, on win32 with a x86 architecture, this means that the abi used would be stdcall. On x86_64, however, windows uses the C calling convention, so C would be used. This means that in our previous example, we could have used extern "system" { ... } to define a block for all windows systems, not only x86 ones.
Using extern "stdcall" on x86_64 is totally valid and will simply result in the same calling convention as "C""system""fastcall" and "cdecl". The only convention that is different is "vectorcall". On 32-bit however, it is hugely important that you use the right one.