SolutionBackup VisualStudio Addin


SolutionBackup is a VisualStudio® 2005/2008/2010/2012/2013 addin that creates a ZIP backup of your current solution or project.
The backup will contain only projects source files, excluding .DLL, .EXE, .OBJ, etc.

Creating a backup of current solution or project is easy, and it's done directly inside VisualStudio:

  • right-click on the solution and select "Backup solution..."
  • right-click on a project select "Backup project..."

SolutionBackup main dialog appears, showing the files that will be added to ZIP backup.
Just change destination folder and ZIP filename (if needed) and press Backup to start.


Compared to the creation of a standard ZIP of the solution folder, SolutionBackup has these pros:

  • SolutionBackup includes only source and embedded files of each project, required for its compilation;
    compiler generated files are excluded (EXE, DLL, OBJ, PDB, ILK, ...)
  • backup is created directly inside VisualStudio, no need to close it or stop your work
  • no need of external compression tools, like WinZip or WinRar

With SolutionBackup it's easy to create a backup of your solution on a regular basis or before starting a deep change, making it possible to undo all of the changes in one easy step.

My thanks to guys for their great #ziplib library


Version history 

ver. 3.3.2  (2014-11-27)

  • Added a workaround for some kind of projects missing a working FullName property.

ver. 3.3.1  (2014-07-18)

  • Added a default value to "format" parameter of ${DATETIME[format]} filename macro, now is "".
  • Changed default format of ${TIME} filename macro, now is "".

ver. 3.3.0  (2013-12-03)

  • Added support for VisualStudio 2013 (thanks to Stan for testing it)
  • Fixed 3.2.0 regression (debug message boxes appearing during backup)
  • Improved macro expansion speed

ver. 3.2.0  (2013-11-19) NOTE: removed due to a bug, a fix will be released soon

  • Added support for parametric macro expansion
  • New parametric macro $DATETIME[format] that returns n user formatted datetime value.
    "format" parameter could be any format string accepted by DateTime.ToString() method.
  • New parametric macro $ENVIRONMENT[variableName] that returns the value of an environment variable.
    Parameter "variableName" is the name of the variable to get.
  • Added support for BIDS (Business Intelligence Development Studio) SQLServer projects.

ver. 3.1.0  (2013-10-21)

  • Joined the two path+filename fields (used to compose output archive filename) into a single one, with support for macro expansion.
    Output filename can now be "$(USERPROFILE)\backups" or "$(SolutionDir)\backups\".
  • Fixed help context menu appearing when clicking "..." button
  • Fixed registry location where configuration is stored
  • Fixed adding window location when switching from dual-screen to single screen setup

ver. 3.0.1  (2013-10-07)

  • Fixed tab order of main addin dialog
  • Fixed a typo into completed messagebox

ver. 3.0.0  (2013-10-04)

  • Addin now supports VisualStudio 2005/2008/2010/2012
    VisualStudio.NET (2003) is no longer supported
  • Addin can now backup single projects too
    (by default VisualStudio hides solution if it contains only a single project).
  • Fixed an exception raised when backing up C++ projects (thanks to Frederick Wasti for reporting)
  • Fixed wrong date of files contained into ZIP archive (thanks to Frederick Wasti for reporting)
  • List of files included into ZIP archive is now sorted alphabetically
  • Changed font of files list to Courier
  • Changed setup environment from MSI to NSIS

ver. 2.0.0  (2008-06-17)

  • First .NET 2.0 version, targeting both VisualStudio 2005 and VisualStudio 2008

ver. 1.0.0  (2005-10-10)

  • After some positive feedbacks from my bug-testers, I decided to release first official 1.0 version.

ver. 0.9.4  (2005-08-01)

  • SolutionBackup now manages correctly projects which are outside solution-file folder. Projects on different drives cannot be backed up due to a ZIP file limit (can't store drive info within ZIP archive).
  • Runtime error reports "AutoZIP" as being the program which generates the error, now changed to "SolutionBackup" (damned Cut&Paste...).

ver. 0.9.3  (2005-07-09)

  • Each file existance is checked before adding it to file-list.
  • Added error handling when preparing EMail message.

ver.  (2005-07-08)

  • - file <projName>.<projExt>.user does not exist in VC++ projects, causing a runtime error during backup.
    (thanks to Glenn Symons for this bug report)

ver. 0.9.2  (2005-07-08)

  • Setup created with InnoSetup (--> 0.9.1) experienced some problems on certain conditions, giving COM errors and faulty COM registration.
    Setup is now created with WindowsInstaller. (thanks to Glenn Symons for this bug report)


Description Latest version
Release date 2014-Nov-27 Size 152,781 bytes
MD5 8fca0a1c7f2b95d2c1dbfc879f8afda4
SHA1 6322092385be4a5b3a9eef0226354c4b6c665b89
SHA256 4321553946b599be3d805c57ba6c7494472373a9faea8b0370701f56acf840d8
Virus check Open virus check report
Description Previous version
Release date 2014-Jul-18 Size 152,639 bytes
MD5 cf1fd31e98a319efc7797c5bb1f2310a
SHA1 396448a7c509a06c74a46e702a66d130da1b5687
SHA256 904803ee8eefe8755804319d8fe0d2074afbd33e428dc1db4084a9cd2de2f21b
Virus check Open virus check report
Description Last version supporting VisualStudio.NET 2003
Release date 2008-Jun-17 Size 592,575 bytes
MD5 7c3542178dc34de70592364b872de8be
SHA1 55ee03490d334374f79e6bab59701c909fe55a8c
SHA256 52d6c6f2186e43f6de22a33ffe2ec3ace384f190e8736a88133eebbd4503707a


This is a great little addin, it will keep my mind at rest when we have to make great changes to the legacy software we come accross frequently.

Thanks for letting me know.

Just released ver. 3.0 with some new features, support for VisualStudio 2010/2012 and a bunch of bug fixes.

Is there an option to add this in VS2013?


I don't have VS2013 to test it with, but it shouldn't be so different from previous versions.

If you could be so kind to do it for me, here you are the steps:

You have another VisualStudio supported version installed

  • install SolutionBackup addin
  • open folder \Visual Studio 20XX\Addins and copy SolutionBackup.Addin file to \Visual Studio 2013\Addins
  • the addin should now load in VisualStudio 2013 too
  • check if everything works as expected and give me a feedback

You don't have another VisualStudio supported version installed

  • we must "trick" setup to let it find VisualStudio 2012
  • check if this registry key exists (VS2013): HKEY_LOCAL_MACHINE\SOFTWARE\Classes\VisualStudio.DTE.12.0
  • create the following registry key (VS2012): HKEY_LOCAL_MACHINE\SOFTWARE\Classes\VisualStudio.DTE.11.0
  • install SolutionBackup addin
  • open folder \Visual Studio 2012\Addins and copy SolutionBackup.Addin file to \Visual Studio 2013\Addins
  • the addin should now load in VisualStudio 2013
  • delete registry key we previously created (VS2012)

Finally check if everything works as expected, give me a feedback and I'll update the setup procedure.

Thanks in advance.


I tried and it works fine with VS2013, I just added:

  >Microsoft Visual Studio>

into SolutionBackup.Addin file.

ooops, you're right, I forgot that step ;)

Thanks for being smarter than me.
I just released a new version (3.3.0) supporting VisualStudio 2013 and fixing other bugs.

Thanks again

I installed SolutionBackup into VS 2015. The installation seemed to be successful in Win10.

However, the in VS 2015, the right click menu does not show a backup option.

Are you aware of any issues with it on VS 2015?

I've not switched to VS2015 jet, so I can't help so much.

Have you already tried the suggestions I gave above for VS2013?
I mean manually copy the 2013 addin files to \Visual Studio 2013\Addins then edit the .Addin file to let VisualStudio2015 load it.

I reviewed your prior instructions, and must have missed something, because I did not understand everything that needs to be done.

Can you try explaining it one more time, and be extra careful to include all necessary info? Thanks :-)

That trick could not work with VisualStudio 2015, where .dll addins should not be supported anymore.

I should switch to VisualStudio 2015 in a few days, then I'll have a look at it...

I'm sorry but VisualStudio 2015 does not support .dll addins anymore.

SolutionBackupAddin must be deeply changed to a VSPackage extension and that could be a lot of work.

Actually there are a lot of freely available code versioning systems out there (GIT is also integrated in VS2015) so I honestly don't know if/when I'll ever do it...

Without the ability to zip files outside of the solution directory, this program is useless.  If all the folders were in one directory, I could just zip it up from file explorer.

You're right, and that's your respectable opinion.

SolutionBackupAddin IS NOT meant to replace a code versioning system (like SVN, GIT, Mercurial to name a few).
Experienced coders (like me) will surely already use one of these well known softwares to keep their code under control.

SolutionBackupAddin is just a point-and-click tool, integrated into VisualStudio, that has some pros respect to the so called "explorer way".

  1. Zipping the whole project folder will surely work. BUT it will include a huge number of useless (these are really useless) files like *.bin, *.obj, *.ilk, *.pcb, *.ipch.
    I suppose you know what I'm talking about: in a small-mid size C++ project, using some APIs and system includes, the *.ipch intellisense database files could easily grow to 100Mb.
    Of course, you could exclude them from the created archive, but this is not a point-and-click solution; it requires a small batch file to execute, an exclude list to mantain and so on.
    And also, what if you exclude all *.dll but need to only include a third part library?
  2. You don't need to leave VisualStudio, just right click on a solution (or project) and press Enter twice.
  3. It's really easy to understand what's included and what's not: everything you can see in a solution (and it's not built by VisualStudio) will be included.

Finally I can't get what you mean with "the ability to zip files outside of the solution directory".
If you need to add an external file, just add it to the solution as an external linked file; that's really easy.
This way the generated ZIP will be "rooted" at the highest common path between the external file and the solution path.


Your addin is great, I mean was great for me...

Everything was ok until one of my projet grows and I needed to make some folders to organize all the project (under the solution node I have only folders).

So now I can't use your solution  to backup my project anymore. 

So is there a chance that you change this behavior ? I'll be great and so much more usefull!!


SolutionBackupAddin was built years ago for non-professional developers (like me at that time) which didn't want to learn complex CVS for their simple projects/solutions.

As your solution grows I suggest you (against my interest...) to look for a better source control system like GIT.
GIT is really great, is self-contained in your sources folder and easy to use (look at TortoiseGIT).
It also well integrates into VisualStudio 2013.

Anyway, could you please create a simple (and empty) solution with a structure like yours and send it to me zipped through the contact form?
I'll have a look at it.

Ok thanks I'll have a look about GIT.

GIT is something I "actually can't do without", even for really simple projects.
I also use it on my documentation folders (with lot of *.odt documents) to keep track of changes. It only adds a .git subfolder and that's all!

Anyway feel free to send me a sample and I'll have a look.

I believe there is an issue with the current version 3.3.2 in that it is unable to backup Items added directly to the solution (as opposed to being a part of one of its projects). It believes that these items are part of a project whose directory is the top level solutions directory itself. Now this directory is (obviously) not a subdirectory of the solutions directory and thus the program throws an error saying "one or more projects are saved in a folder that is outside current solution folder".

The Property Sheets that are used with the project are also not backed up. This Support and a readressal of the above would complete this product the way i see it.

The issue you reported is not really an issue, but a warning message; let me explain.

This addin will only backup files contained in solution folder or one of its children.
This requirement is due to ZIP file created that must have a common base path for all of the contained files.

Suppose you have these files in your solution:

  • C:\Users\John\VisualStudio 2010\Project1\Project1.sln
  • C:\Users\John\VisualStudio 2010\Project1\Project1.csproj
  • C:\Users\John\VisualStudio 2010\Project1\Main.cs

They can all be zipped using C:\Users\John\VisualStudio 2010\Project1 as base folder.

What if you add some files from an external folder, like:

  • C:\Sources\Readme.txt
  • D:\help.htm

Well, VisualStudio doesn't complain adding them (and they're added with absolute path, not relative).
But how should I store them into ZIP?

The first one could be added moving the base path to C:\, but we could have issues if unzipping the archive on a system where C:\Users\John does not exist.
The second one could not be added because it's impossible to store drie name into ZIP content filenames.

I just want to say thank you for your Addin,i'm living in country that i can't, i just can say thank you so much .

I also have a question: why did not you include Bin folder in backup folder ? in some case, Bin folder contains thirth party dll,database ,.... 

sorry for my bad english


Thanks for your kind words.

You can try to include those binary files to your project (or to a solution folder), telling VS to ignore them (into file properties set "Content=True" for C++ projects,  "Build action=Content" for .NET projects) and they should be included into generated ZIP file.

Visual Smarter has a lot of tools for Visual Studio. It's worth of a try:


Warning, JavaScript is disabled!

JavaScript is not available, maybe because you disabled it globally into your browser settings or you are using an addon like NoScript.

We do not have any dangerous JavaScript running here.
Please enable JavaScript; if you're using NoScript this image will help you adding CoolSoft to your whitelist.

Thanks for your comprehension and enjoy CoolSoft.