I've a number of rather old in-proc ATL COM servers, formerly built using VC++ 2005.
Now these projects were ported to VC++ 2015.
Since I need to support legacy Win XP systems, platform toolset is "VS 2015 - Windows XP". Also, according to this issue, /Zc:threadSafeInit-
compiler option is set.
All of servers are written using ATL attributes, there are something like this in each project:
[module(dll, uuid = "{E49F47F5-C0E2-4C1D-8C66-BF8AE6DDF5A1}",
name = "MyLib",
helpstring = "MyLib 1.0 Type Library",
resource_name = "IDR_MYLIB")]
class CMyLibModule
{
public:
// Override CAtlDllModuleT members
};
The problem.
All these projects runs fine on WinXP Pro. But when I try to register them on XP Embedded machine, I get 0xC000001D error code on LoadLibrary
call.
How can I fix/diagnose this error?
P.S. If this makes sense, XP embedded system is built on top AMD Geode processor, while XP Pro system is on top of regular Intel processor.