See attachment. When the DLL is built the exported symbols are: _foo1 foo2 foo3 AFAIK on Windows all exported C functions have an underscore prefix. You can use DLL Export Viewer to see the symbols: http://www.nirsoft.net/utils/dllexp.zip
Created attachment 1063 [details] DLLExportBug
issue 3956 has slightly more info, so I'm closing this one as a duplicate *** This issue has been marked as a duplicate of issue 3956 ***
Forgot to mention the workaround: list the symbols to export in the linker definition file.
Thanks for the workaround. I find it amusing that we've used the exact same function names in the sample, lol. :p