mardi 22 mars 2011 18:46
My application, being built with VC++ express 2010 with the Platform Toolset option set to v100, is trying to run the v90 debug dlls(msvcp90d.dll & msvcr90d.dll) . Is this normal? These dlls don't appear to have installed with VC++ Express 2010 so the debug build won't run.
Is there some option to ensure my build will look exclusively for the v100 dlls?
And if not is there somewhere I can find the V90 debug dlls without downloading all of VC++ Express 2008?
Toutes les réponses
mardi 22 mars 2011 19:11
A VC2010 project can be configured to use 2008 runtime. If you don't want this, unset this option.
mardi 22 mars 2011 20:28
A couple things to try:
1) Are you sure you've rebuilt the solution completely? Portions left over from 2008 could cause this.
2) Are you using some library that is trying to load the v90 DLLs? Using dependency walker to see who loads them/when they are loaded. Setting the toolset to v100 will in fact make your project link to the v100 runtime.
- Marqué comme réponse Colourish mardi 22 mars 2011 21:16
mardi 22 mars 2011 21:17Ah, it was #2. A library I was using was refrencing the v90 dlls. Thanks.
mardi 28 février 2012 08:22
How did you know which one was referencing the v90 ?
Is there an easy&fast way to discover those libraries?
mardi 28 février 2012 15:36
I used Dependency Walker http://www.dependencywalker.com/
You can run your software through it and it shows all the libraries your program uses, and the libraries they use, and so on, in a tree.
mardi 28 février 2012 17:12
I also used Dependency Walker - that's how I found out that my DLL uses v90 platform.
But I don't know why.. which file causes that behavior?