So if you are like me you started following the Module Development Process from the tutorial videos at http://www.dnnsoftware.com web site.  Now you have upgraded your visual studio install and Microsoft has been updating things as well.  Things like the MSBuildTasks project that the DNN module development process that the DNN guys have in their tutorials.  Now when you try and create a module you are running into two problems.

First once you install the Module Development Template from Chris Hammond’s CodexPlex page you find that following the tutorials is not working right.  Then you start searching the web and find “it all works for me” answers to your questions.   There are two problems that I always have to fix before things start to work correctly.

First, I always do my development on my local machine with my IIS mapped to Localhost, not DNNDev.me!   What the heck….  I have no idea why they decided to change it from localhost where everyone knows that it returns to the local machine.  I don’t want to have to create a DNNDev.me entry in my host file…  So, create a new DNN Compiled Module like so;

Create DNN Project

 

 

 

 

 

 

Once you click on OK, VS goes and creates the directory and all the files it requires for your project.   Then when it tries to open the project you get a great little error message of “The Web Application Project MyDNNMOdule is configured to use IIS. The Web server ‘http://dnndev.me…’ could not be found.”

DNNDevMeThis is just a message saying that it can’t find the site becuase you have not created a dnndev.me host entry and it’s not in IIS either.  So to resolve this error and to be able to open your project just to to the directory where you created your project and open the csproj file in something like notepad.  Once open there are two entries where you will need to change the dnndev.me to localhost.  Like this;

csproj code

Save and close the file and go back and open it again in Visual Studio.  It should now open and you are good to go.  Or are you?

 

Now make the changes to the Properties of the solution as directed in the tutorial video.  Then save your project and solution, make sure you save a solution file otherwise once of the following steps will not work right.  Leave your Solution Configuration in Debug mode and compile the solution and it should build with no errors.  Then change your config to Release and build the solution…  You are probably going to end up with an error of something like this….

The “MSBuild.Community.Tasks.XmlRead” task could not be loaded from the assembly E:\WebServer\MySite\DesktopModules\MyDNNMOdule\\packages\MSBuildTasks.1.4.0.56\tools\MSBuild.Community.Tasks.dll. Could not load file or assembly ‘

The system cannot find the file specified. Confirm that the <UsingTask> 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.

Yeah, that helps huh…  When you look though you might actually find the directory.  But for some reason it was not installed correctly, or not installed at all.  To resolve this issue you will need to install the MSBuildTasks using the Package Manager Console.  With your solution open go to the Tools\Library Package Manager menu and select Package Manager Console.   This will open up a a Console widow and you need to type the following command.

PM> Install-Package MSBuildTasks

Which if there are no issues on installing you will get the following back from the Package Manager Console
Successfully installed ‘MSBuildTasks 1.4.0.61’.
Successfully added ‘MSBuildTasks 1.4.0.61’ to PVAVideo.
Delete temporary file
Copying MSBuild Community Tasks files to E:\WebServer\Didasko\DesktopModules\PVAVideo\.build
Copying Sample Build.proj to E:\WebServer\Didasko\DesktopModules\PVAVideo
Don’t forget to commit the .build folder

You see the Version number in that return message.  Copy that into your clipboard because we need it with the next step.

In your Solution Explorer your should see a folder for build scripts, open it up.  Now open the MSBuild.Community.Task.Targets page.  In the first few lines, sixth line in my document, you will find the path for the MSBuildTasks install and it has the old version number in it.  Highlight the version number and paste in the new version from your clipboard.

MSBuild-Targets

Save your solution and run a release build on it again.  Now you should be able to get a successful build on your project.  It should have created the Install directory and placed the install zip files for installing into your  DNN.

 

I hope this can help someone, let me know if it does.