c++dllcompilationwindows-embedded-standard

Compiled dll not working on intel Atom 32bit


I am compiling a dll in visual studio 2017 c++. SDK: 10.0.17134.0

this project uses a template, that automatically creates 2 dll, one for 32 bit and one for 64 bit. I do have two machines that run the same software but have different hardware and OS.

First machine has a intel i7 and runs windows embedded standard 64 bit the second machine has a intel atom and runs windows embedded standard 32 bit

On the 64 bit machine, both dll work. (32 bit and 64 bit), on the atom the 32 bit does not work tough. I do not have any error messages, the only thing i get from the software is that it is not compatible without any additional clues. The software is the same on both systems so I assume that the problem is related to the OS or the processor. the software I am developing for is a vision system by omron so it is nothing that is available online or that can be shared here.

What could be the cause for this? If you need additional information just ask.


Solution

  • Generally, in order for an executable file (either an .EXE program or a .DLL support module) built using the MSVC C/C++ compiler in Visual Studio 2015 or later, to work on a target PC, you need to have the latest VC++ Redistributable run-time libraries installed on that PC.

    See also this discussion on Stack Overflow.