Can't access VS2008 toolset from VS2013 - c++

Could anyone help me with my really simple situation?
I installed VS2008 (Professional)
Updated to SP1
Installed other updates offered by Windwos Update
Installed VS2013 (Update 2 Ultimate)
After that I made a new project, opened projects and I was disappointed, because the following thing was shown:
http://grabilla.com/04710-36a0424a-57c7-4e35-9792-72fd6310c989.png
Could anyone help me what should I do now? I have VS2008 installed, but it doesn't show up on the platform toolset list. Do you have to set something? Did I make something wrong?
Thank you for your help guys! :)

Problem solved via Installing VS2010 too. To have VS2008 toolset you need VS2008, VS2010 (and in my case:) VS2013.

You can not use (in a supported way) the VS2008 Tool chain in VS2013.
There are some tricks that maybe work, i tested with VS2010, executing the VS2008 version of vcvarsall.bat (the file containing the environment variables to set for Visual Studio to find the tools) before loading VS and when load it use the VS2008 Tool Chain, I don't recommended the intellisense would be out of sync and might be other problems.

Related

Using legacy toolset from VS2005 in VS2019

I ran into the rare situation that I have to use static libraries in a project which were compiled with Visual Studio 2005.
As I do not want to get into trouble at runtime as mentioned in this post or here,
I think it's reasonable to use the original toolset.
As far as I have seen, using toolsets down to VS2008 is straightforward. For VS2005 this seems to be more challenging, only Daffodil might be an option.
Is there any chance to get the toolset v80 (VS2005) into the dropdown menu of VS2019 ?
After playing around, I don't know exactly understand how daffodil works or how a feasible approach looks like.
Maybe one could create wrapper-DLLs with a plain C-API and the help of VS2005. Using one IDE with various toolsets feels advantageously to me.
Daffodil works only in earlier versions of Visual Studio 2012/2013/2015.
For using daffodils, check out the related thread: How to move old VC6 project to VS2010 using Daffodil.
To build your project in VS 2010:
Make sure the VC 6 build tools are installed and working. Make sure VS
2010 and Daffodil are installed and working. Open your VS 6 workspace
in VS 2010. A. In Explorer, right-click on your VS 6 workspace (*.dsw)
file. B. Choose Open With -> Microsoft Visual Studio 2010. C. Perform
the migration when prompted. Change the Platform Toolset to v60. A.
Right click on the project(s) and select Properties. B. On the General
page, set Platform Toolset to v60. Build.

Still missing mscvpXXXd.dll after installed corresponding distribution package?

I have Visual Studio 2015 installed on my PC, and I have also installed Miscrosoft Visual C++ 2012/2013 Redistributable packages, both x86/x64 version. Here is my problem that I have only got msvcp110.dll/msvcp120.dll in my System32/SysWOW64 but no msvcp120d.dll/msvcp110d.dll, like below picture.
This makes me can only build some project in release mode. Also, I don't know what's those msvcp110_clr0400.dll/msvcp110_win.dll for.
Anyone knows why those msvcpXXXd.dll are missing? Thank you!

Visual Studio 2010 without IDE

I've got a problem: I must edit a C++ program which cannot be compiled with the compiler included in VS2012, but it can only be done using VS2010. Now the problem is quite simple to explain: how can I install the 2010 compiler without its IDE, so I can use it in VS2012? I use VS2012 and it's only a waste of free hard drive space if I install the IDE, too.
You can't. You need to install VS2010(Express edition will do) and then select platform toolset v100 while editing your project from VS2012
You can get cl.exe of platform v100 from the Windows SDK 7.1.
VS2012 should recognise it after you install, but I'm not sure whether it can actually compile successfully - this question seems to indicate that it will not work.

MSVCP110.dll is missing

I’m writing a Sketchup ruby plugin that calls an external c++ application built using visual studios 2012 version 11.0.51106.01. Another machine that tried using the plugin gets an error about MSVCP110.dll being missing. They’ve tried installing the vcredist and it didn’t fix the problem. does anyone know how to fix this?
You will need to install the correct Redistributable Package from Microsoft. Please note that you cannot just take any of those, you need to pick the one that goes with your very specific version of Visual Studio. The link for example is for VS 2012 SP1. If you have another version, you need another vcredist package.
Answer of user nvoigt seems to be correct (+1 for that). As an alternative to install Redist Package you can deploy "manually" MSVCP110.dll with your application. Easiest way is to put the dll where your exe is. But as the other people say: you need the correct version of redist pack which fits your system configuration.
This article https://helpx.adobe.com/creative-cloud/kb/missing-msvcp110dll.html
pointed me in the right direction. The file wasn't, however, in the directory they said it would be. So I did a search of hard drive for vcredist_x64.exe. It was buried deep in a directory for VisualStudio 12. When I reinstalled it the dll error disappeared and photoshop is running again.
I think I created the problem when I installed a newer version of Visual Studio.

VS 2012 - XP Issues

I installed VS 2012 Professional and the XP update as well. I built my project with v110_xp as the platform toolset on VS 2012. My project's .msi package is installing fine on Win 7 but failing on Win XP SP3. The error reported on XP SP3 is -
"The procedure entry point FlushProcessWriteBuffers could not be
located in the dynamic link library Kernel32.dll".
While the same project built from VS 2005 is installing fine on XP SP3. I am not sure what is going on VS 2012. _WIN32_WINNT is set to 0x0501. Can some one please guide as how to resolve the problem ?
Any help is highly appreciated,
Mahesh.
Yes, the C Runtime has a dependency on FlushProcessWriteBuffers(). The updated version of msvcrt110.dll and libcmtl.lib, the ones you got along with the update, no longer directly link to the function, they use GetProcAddress() to find it and limp along if it is missng. So you should never get this error.
So very high odds that you deployed the wrong version of msvcrt110.dll, an old one instead of the updated one. You can find it back in c:\windows\system32, look at the properties. Mine is version 11.00.51106.1, dated 11/5/2012. A separate installer is available for it here.
The VS2012 runtime that you are installing uses functions that are not present available in XP. See this MS article: Targeting Windows XP with C++ in Visual Studio 2012 which explains more and provides some workarounds.
Update 1 for VS2012 resolve the problem.
But Update 1 isn’t just about new Windows platforms. It also enables you to target Windows XP with native C++ applications in Visual Studio 2012.
If you are building with update 1 and still encountering problems then I suspect that you are installing an out of date runtime. You need to deploy the runtime delivered with update 1.
You can solve this by including the VC11 merge modules from your development machine(program files\common files\merge modules) in your installer. It's easier than having to run the redist exe in your installer.
If you use WIX: merge module addition
I've tested on server 03, xp64 and xp32.