Welcome to WindowsClient.net | Sign in | Join

Client Profile Configuration Designer "How To" Series – Configuring the UI (Part 2 of 4)

The Build System

Before moving on to the payload authoring, let’s take a brief look at the build system. So far, we’ve created a project file (with extension .cpproj) as well as a skin definition file called skin.xml:

Setup_Dialog

This skin file is a design-time only representation of the UI definition that needs to be tweaked to make it consumable by the bootstrapper. This is what the build tasks are responsible for. Taking a look at the .cpproj file, the reader can trace back the targets that are invoked to accomplish this:

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(Registry:HKEY_LOCAL_MACHINE\Software\Microsoft\AH Setup Designer@TargetsFile)" />
    <PropertyGroup>
        <Product>Client Profile Configuration Designer</Product>
        <Company>Microsoft</Company>
    </PropertyGroup>
    <ItemGroup>
        <SkinFile Include="skin.xml" />
        <ProductFile Include="product.xml" />
        <Resource Include="background.jpg" />
    </ItemGroup>
</Project>

When invoking the Preview target through MSBuild, either through the tool or at the command-line as shown further on, the debug folder is created:

Setup_Dialog

This folder contains the “compiled” setup project including the setup debugger product instead of our own product definition. Other than that, the Deployment.xml file is already in the shape consumable by the bootstrapper. In order to run the preview, the real bootstrapper is used (SetupDebugger.exe is an out-of-process helper that’s not used but at debug time) and gets copied from a reference layout location installed by the tool.
Below is an output of the MSBuild invocation for the Preview target:

Setup_Dialog

Comments: 0

You must Login to comment.

Featured Item