LNK1104 cannot open file 'legacy_stdio_definitions.lib' - visual-c++

I've ported my project from vs 2015 to vs 2013.
The Library i'm consuming is also built from vs 2015.
LNK1104 cannot open file 'legacy_stdio_definitions.lib'
What this error is all about?

You shouldn't need legacy_stdio_definitions.lib for programs built with Visual Studio 2013 or earlier versions. Just remove the library. The functions in this library are provided in other Visual Studio 2013 (and earlier) libraries.
Here is a description of why this library is sometimes needed for programs built with Visual Studio 2015 and later.

Related

Is it possible to add the Visual C++ v120 Compiler Tool Set to Visual Studio 2015?

I have a programm using an GSL library which worked quite well with Visual Studio 2013. Now I set up a new Windows version and installed Visual Studio 2015 RC Community.
After that I can not compile the code anymore. After converting the code to the new tool set I got the error that some external symbols of the libraries could not be found. I think this has something to do with the fact, that the library was build with Visual C++ v120.
So is there a possiblilty to add this Compiler Version to the Studio? And does it work without trouble next to a new version installed. I do not want to install the older version of VS, because of the possibility of some troubles haveing to version parallel installed.
You can install VS2013 toolset version from your VS2015 installer without installing visual studio 2013. From the 2015 installer, select Windows 8.1 and Windows Phone 8.0/8.1 Tools. Thats it.
Found it in a msdn forum (have to be the first time something is actually solved in a microsoft forum)
Install Visual Studio 2013
Open your Project in Visual Studio 2015
In the General page of the Project Properties, change the Platform Toolset to "Visual Studio 2013 (v120)"
You never have to open Visual Studio 2013; you just have to install it so that Visual Studio 2015 can find the toolset. (Unfortunately there is no way to install just the toolset.)

Why am I not able to open a VS project

I have a Visual Studio project that I created in my previous PC (32-bit if that makes any difference). I recently got a new PC (64-bit) and I am trying to open the project and I am seeing the following error:
Unsupported
This version of Visual Studio does not have the following project types installed or does not support them. You can still open these projects in the version of Visual Studio in which they were originally created.
- ONew, "C:\temp\onb\ONewSln\ONew\ONew.csproj"
No changes required
These projects can be opened in this version of Visual Studio without changing them. They will continue to open in Visual Studio 2010 SP1 and in this version of Visual Studio.
- ONewWeb, "C:\temp\onb\ONewSln\ONewWeb\ONewWeb.csproj"
- ONewSln, "C:\temp\onb\ONewSln\ONewSln.sln"
Screenshot:
Is there a add-on or visual studio component that I have to download to make it work?
Please help me resolve the issue.
After doing some research and spending hours banging my head against the wall, I figured out how to resolve the issue.
You have to install Microsoft Office Developer Tools for Visual Studio 2012.
Open up the Web Platform Installer and if you don’t have it installed, download and install it. Search for Office Developer Tools and install it.
This will enable you to open the project without any issue.
Usually you can open VS2010 SP1 files in VS2012. But after opening and on compiling you may get some errors of missing packages. Then you have to install the missing packages. Check this out: Visual Studio 2012 compatibilty.
Some solutions, projects, files, and other assets that you created in Visual Studio 2010 Service Pack 1 (SP1) will run without modification in Visual Studio 2012, but others have to be upgraded. The above document describes how various kinds of assets behave in these two versions of Visual Studio.
If you use both Visual Studio 2012 and Visual Studio 2010 SP1, you can create and modify projects and files in either version as long as you don't add features that require Visual Studio 2012.
VS2012 may convert projects when you first open them, but the changes are (except noted in the document linked) backward compatible with VS2010.

Visual Studio 2012 fails to open Visual Studio 2010 projects

I tried to open in Visual Studio 2012 a VS 2010 solution and I get these error:
Unable to read the project file "Language.vcxproj".
D:...\Language\Language.vcxproj(2,33): The tools version "4.0" is unrecognized. Available tools versions are "2.0".
It has something to do with the ToolsVersion attribute:
I believe this may be something with target platform settings, or with the version of the .NET framework, or with the version of the C++ compiler.
BTW, this also happens with .csproj files contained on other solutions I have.
What annoys me more is that I have a colleague that can open those solutions in his computer without any problem and I can not.
In the Control Panel, I have this items for the .NET framework:
Microsoft .NET Framework 4.5 Multi-Targeting Pack
Microsoft .NET Framework 4.5 SDK
Help, please!

System.Exception when trying to run converted VS 2010-project

I've installed the latest version of Visual Studio 2012, with the latest hotfix.
I have a perfect working project, made in VS 2010, that I converted (automatically) to a VS 2012 project.
It builds, but when I try to run it, there is a pop-up: System.Exception. Anyone who knows this problem?
You should install VS 2010 SP1 before you convert any VS 2010 project to VS 2012.
If you haven't done this, the opened project will cause many unrelated behavior.
Also any installer/setup project in VS 2010 will not be opened in VS 2012.

How to use PEX in Visual Studio 2012

VS 2010 powertools installation helped to use PEX & Moles in VS 2010.
Now with VS 2012, I understand that Moles becomes enriched as Fakes but hopefully PEX is retained, please confirm.
Also, how to use PEX in 2012. What needs to be installed (like VS 2010 powertool) to get that working for 2012.
Thanks !!
As far as I know, they are waiting for a final version of Visual Studio 2012 to release a version of Pex compatible with it.
I can't understand why Microsoft doesn't make this things clear... :/
Below are the comments from http://visualstudiogallery.msdn.microsoft.com/fb5badda-4ea3-4314-a723-a1975cbdabb4
Pex for Visual Studio 2012 2 Posts | Last Post April 23, 2013
Written April 23, 2013
Flynn Hi, I am wondering: There is PEX for Visual Studio 2010, there is Code Digger for Visual Studio 2012 and portable libraries but
there
is nothing for Visual Studio 2012 and all the the other library
formats. Why is that?
Written April 23, 2013 Nikolai Tillmann Code Digger (for Portable
Class Libraries) is the first Visual Studio extension from the Pex
Team for Visual Studio 2012. Stay tuned for future extensions that
bring more aspects of the rich experience of the Pex Visual Studio
2010 Power Tools to the latest version of Visual Studio. If you are
looking for a particular Pex feature for Visual Studio 2012, drop as
an email at pexdata#microsoft.com.*
Looks like they introduced Code Digger.
From the PEX webpage:
Code Digger for Visual Studio 2012 is a lightweight version of Pex that allows you to explore public .NET methods in Portable Class Libraries directly from the code editor.
As far as I have read from Microsofts documentation PEX for Visual Studio 2012 is now an integral part called "Fakes and Moles", please look here:
http://research.microsoft.com/en-us/projects/pex/
And here:
http://msdn.microsoft.com/en-us/library/hh549175.aspx
You can continue to use PEX for test generation by opening your solution(s) in VS 2010 , even if  you are normally working inside VS 2012. VS project schema is very compatible between VS 2010 and VS 2012.
You also could consider to run command line PEX from 2010 add-in. See the answer in Create NUnit test cases automatically from Pex. read more about this in Exercise 5 of Parameterized Unit Testing with Microsoft Pex
According to This Webcast
Code Digger was released so that people can see the power of PEX when used properly before they release the Visual Studio 2012 version where people pick it apart for not working with platform specific cases.
They don't speak of a release date but since Visual Studio 2013 is now RTM you'd think that it would be soon. I definitely miss PEX as it helped with Parameterized Unit Testing.

Resources