VS 2017 + SpecFlow + Random error + Windows10 + .Net Framework 2.0 and 3.0


Error

The "TechTalk.SpecFlow.Tools.MsBuild.GenerateAll" task could not be loaded from the assembly ~\packages\SpecFlow.Plus.Excel.1.2.0\tools\specflow.exe.
Could not load file or assembly 'Microsoft.Build.Utilities.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies.
The system cannot find the file specified.
Confirm that the declaration is correct, that the assembly and all its dependencies are available, and that the task contains a public class that implements Microsoft.Build.Framework.ITask

Solution:

So I decided to get to specflow.exe from here
~\packages\SpecFlow.Plus.Excel.1.2.0\tools

and when I double click the exe
Voila:

It says that my machine is missing .NET Framework 2.0 3.0 and 3.5 in Windows 10

This particular app requires the older .NET Framework 3.0. Although the newer .NET Frameworks will try to emulate backwards compatibility, and developers can code to allow different versions, specflow insisted on having its specific version installed.

Luckily Windows 10 has built-in support for this exact scenario. Here is the easy way that I made this app work.

But I get a random error again: (If you don't you are lucky and all your build error would vanish)






The .NET Framework is an integral part of many applications running on Windows and provides common functionality for those applications to run. Normally, before running/installing such applications, we need to enable .NET Framework from the Control Panel on the computer. So, you may first check if the .NET Framework 3.5 is available in the Control Panel on Windows 10 Technical Preview and if available, you may enable it from the Control Panel to install it on the computer. To check if the.NET Framework 3.5 is available in Control Panel and to enable it, please follow these steps:

a) Press “Windows Logo” + “R” keys on the keyboard.
b) Type “appwiz.cpl” in the “Run” command box and press “ENTER”.
c) In the “Programs and Features” window, click on the link “Turn Windows features on or off”.
d) Check if the “.NET Framework 3.5 (includes .NET 2.0 and 3.0)” option is available in it.
e) If yes, then enable it and then click on “OK”.
f) Follow the on-screen instructions to complete the installation and restart the computer, if prompted.

This will install the .NET Framework 3.5 feature on the computer. There is also another way by which .NET Framework 3.5 gets installed on the computer. This is done by the apps on demand.

If an app requires the .NET Framework 3.5, but doesn't find that version enabled on your computer, it displays the prompt for installing the .NET Framework 3.5 on demand, either during installation, or when you run the app for the first time after its installation. In this prompt, you can choose the option “Install this feature” to enable the .NET Framework 3.5 on the computer.

Comments

  1. I was lucky :)

    Thanks for posting the solution

    ReplyDelete
  2. Hi, this was so informative and useful. You explained everything with pictures and thank you so very much for this. You are doing an amazing job. Keep it up.

    ReplyDelete

Post a Comment

Popular posts from this blog

Software Testing @ Microsoft

Trim / Remove spaces in Xpath?