You may wish to read the introduction before reading this section.
The Manifest Maker installation includes an example Visual Studio 2017 solution illustrating the use of manifest projects in the Visual Studio 2017 environment. This is a quite elaborate solution intended to illustrate as much as possible. Chances are that real-life needs are less complex then this. The solution contains the following projects:
Since .Net projects do not follow the Visual Studio 2017 standard XAML/MSBuild configuration, this project uses the C# build Post Build event. The Post Build event is easy to use but one of the disadvantages is that it cannot use the automatic detection of the folder in which Manifest make is installed and, consequently, requires that Manifest Maker folder be in the path or the folder be hard-coded in this definition.
The post-build event is defined as:
|Post-build event command line||sxs32cmd "/clr:$(TargetPath)" /o:auto|
Since the cmdEXE project uses the other projects as dependencies, it is defined in Visual Studio as dependent on the other projects. When you build the solution the DLLs and the corresponding assemblies are built first and the program is built only after the two other builds are complete.
Creating the Manifest Maker project file
The easiest way to create *.sxs32mm project file for integrated build is to use Manifest Maker GUI. Project files are well-formed XML and it is possible to create the project files programmatically. Use a project file saved from Manifest Maker as a template. While we cannot possibly support all variations of project files that may be generated, we will do our best to help you, if you have a problem.
Integrated build ignores or overrides many of the Manifest Maker's project settings. It is possible that some overrides may create conflicts. While these can easily be resolved by editing the project, it is more convenient to use the Save for Integration option in the Manifest Maker File menu. This option saves a copy of the current project with the minimum information required for an integrated build. It may be a good idea to save the original Manifest Maker project file to make it easier to make changes to it in the future.