Deploying the *.Utilities assemblies by using Windows Installer (Mary Lee)

Office solutions for .NET Framework 4 have dependencies on files that are distributed in the Visual Studio 2010 Tools for Office runtime, but there are also files outside of the runtime that are required for Office solutions to run on end-user computers.

These files are the following:

  • Microsoft.Office.Tools.Common.v4.0.Utilities.dll
  • Microsoft.Office.Tools.Excel.v4.0.Utilities.dll
  • Microsoft.Office.Tools.Outlook.v4.0.Utilities.dll
  • Microsoft.Office.Tools.Word.v4.0.Utilities.dll

For some information about these Utilities assemblies, see Assemblies in the Visual Studio Tools for Office Runtime.  For even more information, see Design of VSTO 2010 runtime.


Once you add a Setup project to your Visual Studio solution and add the project output of the Office solution, the next step is usually to exclude all the detected dependencies.  However, you may find that your Office solution does not run on end-user computers. This is because the *.Utilities assemblies must be deployed to the end-user computer or the functionality provided by the interfaces defined in these assemblies must be re-implemented in your own assembly.

To workaround this problem, make sure to not exclude the Utilities assemblies after the file is detected as a dependency.


All the other files are part of the Visual Studio 2010 Tools for Office runtime, so you do not need to deploy them with your Setup project.

Check out the deployment FAQ at  If you have additional questions about deployment, search for or post questions in the forum at


Mary Lee, Programming Writer.