What's the version history of MSBuild? - visual-studio

What is the version history of MS Build?
I see that my .NET Framework installation folders have a version 4.something where as the Visual Studio 2017 Community folder and the .NET Core (v1.0) folder have the latest version 15.1.458.
I looked up the releases on github and I see that a version 14 predates the version 15 major but there's no version 4 till the end of the release history on github.
Can someone provide a chronological record of versions?

Can someone provide a chronological record of versions?
It related to the version of Visual Studio and .net framework. If you are in the old version Visual Studio, like Visual Studio 2012, the MSBuild version is v4.0.30319, which comes from .net framework.
Starting with Visual Studio 2013, the 2013 version of MSBuild will ship as a part of Visual Studio instead of the .NET Framework. This transition allows us to more rapidly evolve MSBuild.
You can check the blog MSBuild is now part of Visual Studio! for some more details.
So, now the MSBuild’s New Binaries Location and version:
Visual Studio 2013: C:\Program Files (x86)\MSBuild\12.0\bin\MSBuild.exe MSBuild version:12.0
Visual Studio 2015: C:\Program Files (x86)\MSBuild\14.0\bin\MSBuild.exe MSBuild version:14.0
Visual Studio 2017: C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\MSBuild.exe MSBuild version:15.0
Visual Studio 2019: C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin\MSBuild.exe MSBuild version:16.0
Notice: Community may be replaced with Enterprise (in 2017 and 2019) depends on your Visual Studio type.
Hope this helps.

Related

Generating Setup Project from visual studio community installer

I have generated visual studio installer from Microsoft visual studio community version. i want to ask is there any difference of installer generated from visual studio community version and visual studio enterprise version OR visual studio ultimate version ?
The installer project extension is the same, assuming that's what you're referring to. There are no extra (or missing) features that depend on your version of Visual Studio.

I upgraded my project from visual studio 2010 to visual studio 2015 but i is there any need to upgrade the msbuild

I am upgrading my project from visual studio 2010 to visual studio 2015
please tell me is there any need to upgraded the ms-build project.
Follow these steps to upgrade project created in earlier versions of VS this may help you:
In VS, on the File menu, click Open and then click Project/Solution,
Web Site, or File, depending on the kind of project you are
upgrading.
In the Open Project dialog box, select a project file, and then click
Open. If VS detects that the project or file was created in an earlier version of Visual Studio, the Visual Studio Conversion Wizard opens.
Complete the Visual Studio Conversion Wizard.
Refrence
is there any need to upgraded the ms-build project?
The answer is No. That because since start with Visual Studio 2013, Visual Studio team made a number of exciting changes to MSBuild for Visual Studio 2013. Now the 2013 version of MSBuild will ship as a part of Visual Studio instead of the .NET Framework. See this blog MSBuild is now part of Visual Studio! for more detail info.
You can find the MSBuild.exe from the directory: C:\Program Files (x86)\MSBuild\14.0\Bin
Since it ships as a part of Visual Studio 2013, just as Michael said, MSBuild upgrade should happen with the VS installation. So you do not need to upgrade the MSBuild separately.
Hope this helps.

What version of Visual Studio is msbuild 14.0 part of?

I need MSBUILD 14.0 and am willing to install Visual Studio to get it.
What version of Visual Studio do I need to install to get MSBUILD 14.0?
It looks like the MSBUILD version number and the Visual Studio name do not match.
Starting in Visual Studio 2013, the MSBuild Toolset version is the same as the Visual Studio version number. So if you have Visual Studio 2015 you should have MSBuild 14.0 already on your system.

How to select the Visual Studio version to use on the build machine?

We have a buildmachine that currently has installed Visual Studio 2010 to compile our application.
Now we have moved to Visual Studio 2015 and developers have installed it on their machines and modified the solution so it works with 2015 but the previous versions will continue to build with 2010.
I was going to install Visual Studio 2015 on the build machine but I don't know how the build machine will know that the previous branches must be built with 2010 and the new ones with 2015. With some Msbuild settings? Just looking at the sln? By other means?
With some Msbuild settings? Just looking at the sln? By other means?
Open your .sln file with Notepad. Look for Format Version on the first line which correlates with a Visual Studio version.
•Format Version 11.00 is Visual Studio 2010
•Format Version 12.00 is Visual Studio 2013 && Visual Studio 2013
For visual studio 2013 and visual studio 2015, we could find the visual studio version on the third line. like this:
visual studio 2013: VisualStudioVersion = 12.0.30501.0
visual studio 2015: VisualStudioVersion = 14.0.25420.1
As far as I know it does it looking at the ToolsVersion on every .csproj. VisualStudio is not required as MsBuild and the compiler come with the .Net Framework.

Determining the Old version of Visual Studio .NET project that was used to create the project

Our Customer sent us code from an Old Visual Studio .NET project
The Customer wants us to assess if it is possible to upgrade the Old Visual Studio .NET project in such that it will work in Visual Studio 2013
My first approach was to try and run the Old Visual Studio .NET project in the corresponding Visual Studio .NET project that was used to Develop the aforementioned project at first.
please tell me how I would determine the Old version of Visual Studio .NET project that was used to create the project.
I opened the .SLN file using notepad, and the first 2 lines showed the following:
Microsoft Visual Studio Solution File, Format Version 9.00
Visual Studio 2005
What does the above mean?
Open the .sln file in your favorite text editor (Notepad, if you don't have anything else will do), and check out the header:
Microsoft Visual Studio Solution File, Format Version 11.00
The Format Version xx.xx should tell you which version of Visual Studio was used.
Version 12.00 --> Visual Studio 2013
Version 11.00 --> Visual Studio 2012
Version 10.00 --> Visual Studio 2010
Version 9.00 --> Visual Studio 2008

Resources