Deployment Tools Foundation

Deployment Tools Foundation Dependencies
Overview > Dependencies

This page lists all the components that the DTF project depends on, at build time and at run-time.

Build-time Dependencies

  • Visual Studio / .NET Framework - Most of DTF can be built with Visual Studio 2005 & .NET Framework 2.0. However, the LINQ project requires VS 2008 & .NET Framework 3.5.

  • Sandcastle - .NET documentation build engine from Microsoft, used to process all the XML doc-comments in DTF libraries into DTFAPI.chm. (official site)

  • Sandcastle Builder - Sandcastle by itself is complex and difficult to use; this free tool from Codeplex provides an easy-to-use project system around it to automate the documentation build process. (project link)

  • HTML Help Workshop - Tools for building HTML Help 1.x (CHM files). Used to build DTF.chm. (download link)

Run-time Dependencies

  • .NET Framework - Most of DTF requires .NET Framework 2.0. (.NET 1.1 is no longer supported.) The only exception is the LINQ assembly which requires .NET Framework 3.5.

  • Windows Installer - Windows Installer introduced new APIs and capabilities with each successive version. Obviously, the corresponding functionality in the managed APIs is only available when the required version of the Windows Instaler (msi.dll) is installed on the system. Use the Installer.Version property to easily check the currently installed MSI version. Attempting to use an API not supported by the current version will result in an EntryPointNotFoundException. To check what version is required for a particular API, see the documentation link to the corresponding unmanaged API in MSI.chm.

    In some instances when a newer version of MSI provides an "Ex" alternative to a function, only the "Ex" function is used by the managed library. This may hide some functionality that would have otherwise been available on a system with an older version of MSI.

  • cabinet.dll - The DTF cabinet compression library uses cabinet.dll to implement the low-level cabinet compression and decompression. This DLL is part of all versions of Windows, located in the system directory.

  • System.IO.Compression.DeflateStream - The DTF zip compression library uses this class to implement the low-level zip compression and decompression. This class is part of .NET Framework 2.0 and later.