VC++ 2015 ATL, DllRegisterServer fails with 0Xc0000005 on Windows 2003

  • Thread starter Thread starter Alexander Zammit
  • Start date Start date
A

Alexander Zammit

Guest
I ran into a problem with VC++ 2015 ATL.

This is an in-proc COM DLL server built as follows:
Platform toolset: Visual Studio 2015 – Windows XP (V140_xp)
Runtime Library: statically linked (/MT)
Build Platform: Win32

Code is extremely simple. Just what the project wizard generates plus a COM object with an empty method.


PROBLEM
The COM registration fails on Windows 2003 but succeeds on later platforms. I tested:
Windows 2003 (x86) – FAIL 0Xc0000005
Windows 2003 (x64) – FAIL 0Xc0000005
Windows 2008 (x64) - SUCCESS
Windows 2012 R2 (x64) - SUCCESS
Windows 8.1 (x64) - SUCCESS
Windows 10 (x64) – SUCCESS

I also installed VC++ 2015 on a second machine (that already had VS 2012), built a new ATL object from scratch and had the same results when using the platform toolset:
Visual Studio 2015 – Windows XP (V140_xp)

However on this machine I also built the same DLL using the toolset:
Visual Studio 2012 – Windows XP (V110_xp)

With the 2012 toolset the DLL installed fine on all platforms.
So the problem clearly concerns the VS2015 Windows XP toolset.



Developer for WinDeveloper IMF Tune extending Exchange 2003/2007/2010/2013 Content Filter - WinDeveloper IMF Tune

Continue reading...
 
Back
Top