4

I am testing Free and Open Source Software using Microsoft's Visual Studio 2015 Community Edition (and here) to ensure compatibility with the compiler and tools. The 30 day trial has expired, so I need to work from the command line because the IDE exists after telling me the trial has expired:

enter image description here

When I try to run msbuild from the command line, I get a couple of top level errors:

Test> msbuild cryptest.sln
Microsoft (R) Build Engine version 14.0.23107.0
Copyright (C) Microsoft Corporation. All rights reserved.

Building the projects in this solution one at a time. To enable parallel build,
please add the "/m" switch.
Build started 9/7/2015 7:58:54 AM.
Project "...\cryptest.sln" on node 1
 (default targets).
ValidateSolutionConfiguration:
  Building solution configuration "Debug|Win32".
MSBUILD : error MSB3428: Could not load the Visual C++ component "VCBuild.exe".
 To fix this, 1) install the .NET Framework 2.0 SDK, 2) install Microsoft Visua
l Studio 2005 or 3) add the location of the component to the system path if it
is installed elsewhere.  [...\cryptest.sln]
Done Building Project "...\cryptest.sln" (default targets) -- FAILED.

Build FAILED.

"...\cryptest.sln" (default target)
(1) ->
(cryptlib target) ->
  MSBUILD : error MSB3428: Could not load the Visual C++ component "VCBuild.exe
". To fix this, 1) install the .NET Framework 2.0 SDK, 2) install Microsoft Vis
ual Studio 2005 or 3) add the location of the component to the system path if i
t is installed elsewhere.  [...\cryptest.sln]

    0 Warning(s)
    1 Error(s)

The problems above are due to a down level (Visual Studio 2008) solution and project files.

The official docs are at How to: Upgrade Visual C++ Projects to Visual Studio 2015, but the page does not discuss a solution upgrade from the command line.

According to the VC++ Team Blog at Visual Studio 2010 C++ Project Upgrade Guide, there's a VCUpgrade.exe located in $(VSInstallDir)\common7\Tools. But: "... [VCUpgrade.exe is only] suitable for upgrading applications with only one project as it cannot take in solution file as input and parse solution information into project files."

I also found Upgrading Projects to Visual C++ 2010 at Building Applications that Use the Windows SDK. It tells me to use devenv.exe /upgrade. When I follow its instructions, it results in the following. There were no errors, but nothing was converted (and no log file was created).

!! From VS2015 Developer Command Line Prompt
cryptopp-5.6.3>devenv.exe /upgrade
cryptopp-5.6.3>dir *.vcproj *.vcxproj
...

09/07/2015  10:36 AM            81,845 cryptdll.vcproj
09/07/2015  10:36 AM            40,168 cryptest.vcproj
09/07/2015  10:36 AM           205,529 cryptlib.vcproj
09/07/2015  10:36 AM             8,885 dlltest.vcproj

Attempting to use VCupgrade.exe (even though its an incomplete solution according to the Microsoft docs) results in:

cryptopp-5.6.3>vcupgrade cryptest.vcproj
Microsoft (R) Visual C++ Project Convert Utility - Version 14.00.23107
Copyright (C) Microsoft Corporation. All rights reserved.

Failed to initialize the VCProjectEngine.

How do I convert a solution and project files from an earlier version of Visual Studio to Visual Studio 2015?


There's a few similar questions, but they don't cover the command line with errors like "Failed to initialize the VCProjectEngine" and the [unexplained] expiring trial. See, for example, Upgrade a visual studio solution on the command line with visual studio express.


Humorously (in a morbid sort of way), Microsoft calls Visual Studio 2015 Community a free dev tool, and does not state its an expiring trial at Overview of Visual Studio 2015 Products or Visual Studio Community pages. In fact, Microsoft tells us its fully featured and free for Open Source projects (which this project is).

I guess Microsoft lied and the lawyers buried it in the Terms of Service somewhere. More humorously, neither "trial" nor "expire" are called out or mentioned at the Terms of Service, either. See Microsoft's Visual Studio Community license terms.

Not so humorously, I declined a copy of Visual Studio Professional after reviewing Microsoft's marketing literature because I thought Community edition would meet the project's needs. I hope that does not turn out to be a $500 USD mistake...

Community
  • 1
  • 1
jww
  • 97,681
  • 90
  • 411
  • 885
  • 1
    Have you checked this: http://blogs.msdn.com/b/visualstudio/archive/2015/08/07/visual-studio-2015-faq.aspx "Trial here means the period you can use the community edition before you must sign in to fully unlock the IDE." – Simon Mourier Sep 10 '15 at 15:44
  • Thanks Simon. I was not aware a FAQ even existed (and on someone's blog, none the less). The best I can tell, Microsoft is changing terms after the fact. The FAQ does not discuss the details, like is the trial applied to the IDE and VCupgrade, or does it apply to everything, like the compiler and linker, too. – jww Sep 11 '15 at 22:20
  • Legally, I suppose the whole package is bound to the license terms. Technically, it depends specifically on the exe, etc. But most tools are hard (and it gets harder and harder with every new version) to use w/o the IDE - which is technically bound on the online account. – Simon Mourier Sep 12 '15 at 06:58
  • I'm using community edition without trial expired issue for about 2 months. Are you sure that your installation expired because of CE and not just expired sign in token or some old registry records from expired trial of VS 2015 ultimate or anything else ? – Alexey Shcherbak Sep 13 '15 at 06:16
  • Alexey - you're guess is as good as mine (or mine is as good as yours). I can't locate the log files, either. Here's the related question: [Where are Developer Studio logs written?](http://stackoverflow.com/q/32496279). – jww Sep 13 '15 at 08:28
  • I'm pretty sure you just need to sign in. My Community Edition has not expired 30+ days... But it shows that I am logged in with my live account. – Jason Hughes Sep 15 '15 at 18:41

3 Answers3

4

It seems the best (and most supported) choice might be to just sign-in with a Microsoft account, so that you can use the free Community Edition license. This will allow you to open the development environment and upgrade the solution using the intended / most-well-tested upgrade process.

denis bider
  • 434
  • 3
  • 8
  • The problem with that is Microsoft has my account locked out. It got locked out a few years back when Microsoft changed terms and requiring more information for the Hotmail accounts, like phone numbers. I have not been able to find a support path to get Microsoft to unlock the account. You get what you pay for with all these "free" things. They cost more time, money and effort than you would believe... – jww Dec 17 '15 at 02:40
  • The option I really like is the "free is ***really*** free" one (not referring to beer). Why make it more complicated than it needs to be? That avoids all these messes created by the corporation and its lawyers. But that's just [bike shedding](http://bikeshed.com/) on my part. – jww Dec 17 '15 at 02:43
  • 4
    @jww, *"Microsoft has my account locked out"* - Is there any specific reason you don't create a new account (like everybody else on the internet would do)? For example using your ********@gmail.com address or a freshly created one? – SEJPM Dec 19 '15 at 21:06
2

This doesn't answer all your questions, as I think the first question needs to be addressed to test and see if you need answers to upgrade your projects.

I have had similar error messages over time with VS. See this answer- Visual Studio 2013 Community weird errors Although this discusses VS2013 the same principles apply.

Visual Studio Community Edition is free.(Much like the express versions MS offers)

enter image description hereenter image description here

These are the license rights you have.

MICROSOFT SOFTWARE LICENSE TERMS

MICROSOFT VISUAL STUDIO COMMUNITY 2015

These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. They apply to the software named above. The terms also apply to any Microsoft services or updates for the software, except to the extent those have different terms.

IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE RIGHTS BELOW.

INSTALLATION AND USE RIGHTS.
Individual license.
If you are an individual working on your own applications to sell or for any other purpose, you may use the software to develop and test those applications.

I recommend uninstalling VS and any associated dependencies. Download VS2015 CE from one of the links I've provided and reinstall from that exe. Allowing VS to configure the installation and it's dependencies.

For the trial to expire, it makes me think you didn't download the CE. This is why I suggest a fresh download.

Also, if you cannot run VS by opening it's shortcut, you're not going to be able to run it from the command line.

After getting it up and running, then see how your upgrades go. Also, remember if you have any errors about missing dependencies, download them.

Hope this helps some, I saw this was about to expire and you had no answers.

Community
  • 1
  • 1
  • Its not clear to me how or why this is relevant. I took a screen capture of UI telling me its Community Edition, and its expired. – jww Sep 18 '15 at 06:37
  • 2
    I had the same problem... using Professional, thought it was pre-activated, but no. Entering the key made devenv /upgrade work. Thanks! – Dan Kegel Feb 27 '17 at 23:43
0

you could upgrade using the devenv.exe command: just invoke it with the “/upgrade” switch. The location of devenv.exe is specified by the DevEnvDir environment variable in the VS 2010 command prompt window.

Command:
a) To upgrade solution file: devenv.exe /upgrade <solution file (.sln)>; or

b) To upgrade project file: devenv.exe /upgrade <project file (.vcproj)>.

Ref: https://devblogs.microsoft.com/cppblog/to-the-command-line-enthusiasts-some-quick-know-hows-for-upgrading-to-vs-2010/

arvind
  • 1