Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
See more: C++ DLL
I can't run any 64 bits (x64 platform) C++ .NET application built with Visual Studio 2008 Professional in the Debug configuration.
 
Error messages indicate that the Side-by-Side configuration is invalid. Further investigations (using SxStrace) reveal that there are indeed no debug versions of the Run-Time libraries in \Windows\WinSxS (files msvc*90d.dll). Release versions are there.
 
The only 64 bits Debug version that can be found are in C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\redist\Debug_NonRedist\amd64\Microsoft.VC90.DebugCRT
 
I have re-installed VC2008. I have also tried to copy the DLLs in \Windows\WinSxs, but protections are too strong.
 
Why is it that the applications don't find these DLLs ? What can I do ?
Posted 22-Dec-12 8:58am

1 solution

Rate this: bad
good
Please Sign up or sign in to vote.

Solution 2

Hurray, I found this, deep in MS doc: http://msdn.microsoft.com/en-us/library/ms235317(v=vs.90).aspx[^]
 
You just need to create your own installation package for these Debug DLLs !? Yet another twist from ever-cunning Microsoft...
  Permalink  
Comments
Philippe Mori at 3-Jan-13 10:06am
   
You also have to install the run-time for a release version when you build one as otherwise it will not works on a computer where the runtime for that version of the compiler has not yet been installed.
Generally, you should not used debug versions of those DLLs but build a release version of your program when you ship it. It is a bad practice to ship a debug version as it is slower (and in some case much slower like for STL containers) than the release version and it might also be somewhat easier to reverse-engineer a debug version than a release one.
YvesDaoust at 3-Jan-13 10:15am
   
I am not shipping anything, just debugging a program.
I find it hilarious that you need to build an installer as a workaround.
Philippe Mori at 3-Jan-13 11:25am
   
Not on your own machine but if you want to install it on another machine then you have to ensure that you install anything that your application uses.
Well if the other computer is under your control and you do it only for testing purpose then you might install the run-time manually from its stand-alone installer.
YvesDaoust at 3-Jan-13 11:30am
   
I don't plan to install on another machine. I just want to debug on mine.
Philippe Mori at 3-Jan-13 10:13am
   
As a good programmer, you also want to create an installation so that your program correctly appears in Add/Remove program and that installing it or uninstalling works properly and safely.
 
It is a good thing that Microsoft has added protection as Windows is a lot more stable now that it used to be in the past.
YvesDaoust at 3-Jan-13 10:17am
   
I am not sure you understood my post.
Philippe Mori at 3-Jan-13 11:32am
   
Maybe but on your own computer when Visual Studio is properly installed, you don't have to do anything to run a debug application. If Visual Studio is not working properly in your case, maybe something went wrong for one reason on another like a conflict if you have installed or installed multiple versions not always in the expected order... Or some problem might occurs if you upgrade a project from one version to the next... Do you have that problem with a new C++ project?
YvesDaoust at 3-Jan-13 11:44am
   
That's what I thought too. That's how it used to be. The Win32 projects are running fine, both Release and Debug. As I said, any x64 project fails in the Debug mode, even when created from scratch and even after complete reinstallation of VS2008 !
Philippe Mori at 3-Jan-13 14:28pm
   
I never have that problem but I'm not sure if I have ever tried 64 bits in VS 2008.
YvesDaoust at 4-Jan-13 9:47am
   
It seems that my problem is not isolated: http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/b2aacd05-d9e9-4c6f-95f5-d6c005c9a5c6/
Thanks for your contributions.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 DamithSL 445
1 Maciej Los 278
2 OriginalGriff 229
3 Zoltán Zörgő 190
4 BillWoodruff 160
0 OriginalGriff 7,934
1 DamithSL 6,084
2 Sergey Alexandrovich Kryukov 5,449
3 Maciej Los 5,174
4 Kornfeld Eliyahu Peter 4,539


Advertise | Privacy | Mobile
Web02 | 2.8.141223.1 | Last Updated 22 Dec 2012
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100