Walkthrough: Customize Help and Support

This walkthrough describes how to build and to deploy a customized Escalation page to contain customized support information. OEMs and system builders must customize the Escalation page to display support information for multiple language and multiple regional distribution.

The Escalation pages can use a customized cascading style sheet (CSS). For more information about using customized CSS for your customized Help Home and Escalation pages, see "How to: Customize Help Home and Escalation Pages" in the Vista Help Authoring Guide (Vista_Help_Authoring.chm). This is located in the /SDKs folder, which the Windows OEM Preinstallation Kit (Windows OPK) and Windows Automated Installation Kit (Windows AIK) create during installation.

The Escalation Page Template contains an area for authoring customized content and a required Microsoft Maintenance section. You may use the code example as the starting point for creating your own customized escalation page.

This walkthrough uses sample XML with information for a fictitious company, Fabrikam, which is inserted for reference purposes only. To complete this walkthrough, substitute your company name and information for Fabrikam's.

The folder structure that is used throughout this walkthrough uses placeholder names. You may replace Corporate_Content and Corporate_Setup with more appropriate names for your actual content. OEMs may use placeholder names on the model of OEM_Content and OEM_Setup.

Example code for deploying your customized Help and Support content is given for both OEM and corporate scenarios at the end of this topic.

In the /Samples folder that is created when you install either the Windows OPK or the Windows AIK, the Help customization sample files are provided for OEM and Corporate help customization.

Prerequisites

To complete this walkthrough, you need the following:

  • A technician computer. For more information, see Building a Technician Computer.
  • A low-formatting text editor, such as Notepad.
  • The Vista Help Authoring Guide (Vista_Help_Authoring.chm). This is located on the Windows OPK and Windows AIK DVDs.
  • An authorized copy of a Windows Vista product DVD.
  • The following folders on your technician computer:
    • C:\Corporate_Content\Escalation
    • C:\Corporate_Content\Escalation\Topics
    • C:\Corporate_Content\Escalation\Resources
    • C:\Corporate_Setup\En-us

Step 1: Add Your Custom Content

  1. Open the C:\Corporate_Content\Escalation\Topics folder.

  2. Create a new text file.

  3. Copy and paste the following code into the file, and save it with the name Escalation.xml.

Note

Before you save the following code, edit [Windows OPK | Windows AIK] so that the brackets are removed and you have specified the correct location, based on whether you are using the Windows OPK or the Windows AIK.

    <?xml version="1.0" encoding="utf-8"?>
    <conceptual xmlns="https://schemas.microsoft.com/maml/2004/10" xmlns:doc="https://schemas.microsoft.com/maml/internal" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="https://schemas.microsoft.com/maml/2004/10
    C:\Program Files\[Windows OPK | Windows AIK]\SDKs\Help and Support\Schema\maml.xsd">
    
       <title>
          <!--Insert a title for your support page here-->
       </title>
       <content>
       <!--Insert your support information here-->
    <!--Important: The Microsoft escalation module must be included as part of your escalation page. Do not delete the following "sections" element.-->
       <sections replaceWith="mshelp://windows/?id=12345678-1234-1234-1234-123456789000#msft_escalation_module">
          <section>
             <title/>
          </section>
       </sections>
       </content>
    </conceptual>
  1. Locate the text <!--Insert a title for your support page here-->, and replace it with Fabrikam Customer Support.

  2. Locate the text <!--Insert your support information here-->, and paste the following code below it.

    <!-- Escalation Page Content Begin -->
        <para>
          North America:
          <navigationLink>
            <linkText>http://www.fabrikam.com/support</linkText>
            <uri href="http://www.fabrikam.com/support">
              <summary>Support site for North America.</summary>
            </uri>
          </navigationLink>
        </para>
    
        <para>
          Germany:
          <navigationLink>
            <linkText>http://www.fabrikam.de/support</linkText>
            <uri href="http://www.fabrikam.de/support">
              <summary>Support site for Germany.</summary>
            </uri>
          </navigationLink>
        </para>
    
        <para>
          France:
          <navigationLink>
            <linkText>http://www.fabrikam.fr/support</linkText>
            <uri href="http://www.fabrikam.fr/support">
              <summary>Support site for France.</summary>
            </uri>
          </navigationLink>
        </para>
        <para>Technical Support (North America): 1-555-123-4567</para>
        <para>Technical Support (Worldwide): 1-123-456-7890 (Hours are 8:00 A.M. to 5:00 P.M. M-F Pacific Time)</para>
        <para/>
        <!-- Escalation Page Content End -->
    
  3. Save and close the file.

  4. Copy the art image file (in PNG format) for the Fabrikam logo to C:\Corporate_Content\Escalation\Resources\Fabrikam.Windows.Client.F.PNG.

  5. Copy the style sheet (.css file) for the Fabrikam escalation page to C:\Corporate_Content\Escalation\Resources\Fabrikam.Windows.Client.stylesheets.escalation.css.

Step 2: Create Project-Level Files

  1. Open the C:\Corporate_Content\Escalation\ folder.

  2. Create a new text file.

  3. Copy and paste the following code into the file, and save it with the name Escalation.h1c.

    <?xml version="1.0" encoding="utf-8"?>
    <HelpCollection Id="Escalation" DTDVersion="1.0" FileVersion="" LangId="1033" Copyright="(c) 2005 Microsoft Corporation. All rights reserved." Title="Escalation" xmlns="https://schemas.microsoft.com/help/collection/2004/11">
       
       <CompilerOptions CompileResult="H1S" CreateFullTextIndex="Yes" BreakerId="Microsoft.NLG.en.WordBreaker">
       </CompilerOptions>
       
       <VTopicDef File="Escalation.H1V" />
       
       <KeywordIndexDef File="Escalation_AssetId.H1K" />
       <KeywordIndexDef File="Escalation_BestBet.H1K" />
       <KeywordIndexDef File="Escalation_LinkTerm.H1K" />
       <KeywordIndexDef File="Escalation_SubjectTerm.H1K" />
       
       <ItemMoniker Name="!DefaultTOC" ProgId="HxDs.HxHierarchy" InitData="AnyString" />
       <ItemMoniker Name="!DefaultFullTextSearch" ProgId="HxDs.HxFullTextSearch" InitData="AnyString" />
       <ItemMoniker Name="!DefaultAssetIdIndex" ProgId="HxDs.HxIndex" InitData="AssetId" />
       <ItemMoniker Name="!DefaultBestBetIndex" ProgId="HxDs.HxIndex" InitData="BestBet" />
       <ItemMoniker Name="!DefaultAssociativeIndex" ProgId="HxDs.HxIndex" InitData="LinkTerm" />
       <ItemMoniker Name="!DefaultKeywordIndex" ProgId="HxDs.HxIndex" InitData="SubjectTerm" />
    </HelpCollection>
    
  4. Save and close the file.

  5. Open the C:\Corporate_Content\Escalation\ folder.

  6. Create four new text files with the following names.

    • Escalation_assetid.h1k
    • Escalation_bestbet.h1k
    • Escalation_linkterm.h1k
    • Escalation_subjectterm.h1k
  7. Copy and paste the following code into each file, replacing the value of the Name attribute with the appropriate value for each file type.

    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE HelpIndex>
    <HelpIndex DTDVersion="1.0" Name="[AssetId | BestBet | LinkTerm | SubjectTerm]" />
    
  8. Save and close each file.

  9. Open the C:\Corporate_Content\Escalation\ folder.

  10. Create a new text file.

  11. Copy and paste the following code into the file, and save it with the name Escalation.h1v.

    <?xml version="1.0" encoding="utf-8"?>
    <VTopicSet DTDVersion="1.0" xmlns="https://schemas.microsoft.com/help/vtopic/2004/11">
       <Vtopic Url="topics\escalation.xml" RLTitle="Get customer support or other types of help">
          <Attr Name="assetid" Value="fabrikam.windows.client.escalation" />
          <Keyword Index="AssetId" Term="fabrikam.windows.client.escalation" />
          <FTSText>help support assistance technical support customer service tech support live help phone support help and support center</FTSText>
       </Vtopic>
       <Vtopic Url="resources\Fabrikam.Windows.Client.stylesheets.escalation.css">
          <Attr Name="assetid" Value="Fabrikam.Windows.Client.stylesheets.escalation.css" />
          <Keyword Index="AssetId" Term="Fabrikam.Windows.Client.stylesheets.escalation.css" />
       </Vtopic>
       <VTopic Url="resources\Fabrikam.Windows.Client.F.PNG">
          <Attr Name="assetid" Value="Fabrikam.Windows.Client.F.PNG" />
          <Keyword Index="AssetId" Term="Fabrikam.Windows.Client.F.PNG" />
       </VTopic>
    </VTopicSet>
    

Step 3: Create Collection-Level Files

  1. Open the C:\Corporate_Setup\En-us\ folder.

  2. Create a new text file.

  3. Copy and paste the following code into the file, and save it with the name Corporate.h1c.

    <?xml version="1.0"?>
    <HelpCollection xmlns="https://schemas.microsoft.com/help/collection/2004/11" DTDVersion="1.0" LangId="1033" Title="Corporate Collection">
    <TOCDef File=" corporate.H1T" Id="InsertTOC: Corporate "/>
    <KeywordIndexDef File=" corporate_assetid.H1K"/>
    <KeywordIndexDef File=" corporate_subjectterm.H1K"/>
    <KeywordIndexDef File=" corporate_bestbet.H1K"/>
    <KeywordIndexDef File=" corporate_linkterm.H1K"/>
    <ItemMoniker Name ="!DataSource" ProgId="HxDs.HxDataSource" InitData =""/>
    <ItemMoniker Name="!DefaultToc" ProgId="HxDs.HxHierarchy" InitData="AnyString"/>
    <ItemMoniker Name="!DefaultFullTextSearch" ProgId="HxDs.HxFullTextSearch" InitData="AnyString"/>
    <ItemMoniker Name="!DefaultAssetIdIndex" ProgId="HxDs.HxIndex" InitData="AssetId"/>
    <ItemMoniker Name="!DefaultKeywordIndex" ProgId="HxDs.HxIndex" InitData="SubjectTerm"/>
    <ItemMoniker Name="!DefaultAssociativeIndex" ProgId="HxDs.HxIndex" InitData="LinkTerm"/>
    <ItemMoniker Name="!DefaultBestBetIndex" ProgId="HxDs.HxIndex" InitData="BestBet"/>
    </HelpCollection>
    
  4. Save and close the file.

  5. Open the C:\Corporate_Setup\en-us folder.

  6. Create four new text files with the following names.

    • Corporate_assetid.h1k
    • Corporate_bestbet.h1k
    • Corporate_linkterm.h1k
    • Corporate_subjectterm.h1k
  7. Copy and paste the following code into each file, replacing the value of the Name attribute with the appropriate value for each file type.

    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE HelpIndex>
    <HelpIndex DTDVersion="1.0" Name="[AssetId | BestBet | LinkTerm | SubjectTerm]" />
    
  8. Save and close each file.

  9. Open the C:\Corporate_Setup\en-us folder.

  10. Create a new text file.

  11. Copy and paste the following code into the file, and save it with the name Corporate.h1t.

    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE HelpTOC>
    <HelpTOC xmlns="https://schemas.microsoft.com/help/toc/2004/11" DTDVersion="1.0">
    
    <HelpTOCNode Url="mshelp://corporate/?tocid=RootTOC">
          <HelpTOCNode Url="mshelp://corporate/?id=fabrikam.windows.client.escalation" Title="Fabrikam Support Page" />
       </HelpTOCNode>
    </HelpTOCNode>
    </HelpTOC>
    
  12. Save and close the file.

Step 4: Create Compiled Help Files

  1. Open a command prompt and go to C:\Program Files\[Windows OPK | Windows AIK]\SDKs\Help and Support\AP Help Compiler\X86

Note

Before you use the preceding path, edit [Windows OPK | Windows AIK] so that the brackets are removed and you have specified the correct location based on whether you are using the Windows OPK or the Windows AIK.

  1. Enter the following command:

    apcompnt.exe -p C:\ Corporate_content\escalation\escalation.h1c -o C:\Corporate_setup\en-us\escalation.h1s
    

    The .H1S file is created in C:\Corporate_setup\en-us.

Step 5: Create a HelpConfig.xml File

  1. Create a new text file.

  2. Copy and paste the following code into the file, and save it to %WINDIR%\Help\HelpConfig.xml.
    For online customization, this folder is on the destination computer. An online Windows installation is a Windows installation that is currently running on the computer.
    For offline customization, this folder is on the technician computer. An offline Windows installation is a Windows image that is not currently running. The Windows image can be in a .wim file, or a Windows installation that is on a separate partition.

    <corporateHelpIns xmlns="urn:schemas.microsoft.com:corporatehelpins">
       <credentials domain="" userName="" password=""/>
       <content path="C:\ Corporate_Setup"/>
       <customization type="home" pageUrl="" cssUrl=""/>
       <customization type="escalation" pageUrl="mshelp://corporate/?id=fabrikam.windows.client.escalation" cssUrl="mshelp://corporate/?id=Fabrikam.Windows.Client.stylesheets.escalation.css"/>
    </corporateHelpIns>
    

Next Steps

To Deploy Custom Help by Using OCSetup

  1. Boot the destination computer into Audit mode.
    For more information about Audit mode, see How Sysprep Works.

  2. Ensure that you are signed in as an Administrator.

  3. On the destination computer, click Start, point to All Programs, point to Accessories, and then click Command Prompt.

  4. At the command prompt, enter one of the following commands to run OCSetup. (Your choice depends on whether you are an OEM or a corporation making customizations.)

    start /w OCSetup OEMHelpCustomization 
    

    -or-

    start /w OCSetup CorporationHelpCustomization
    
  5. Delete the HelpConfig.xml file from the computer.

To Deploy Custom Help by Using Package Manager

  1. Mount the offline image. For more information about using ImageX to mount an offline image, see Mount and Modify an Image.

  2. Ensure that you are signed in as an Administrator. On the destination computer, click Start, point to All Programs, point to Accessories, and then click Command Prompt.

  3. Enter the following command to mount an offline image:

    imagex /mountrw C:\install.wim 1 Z:\wim_mount
    

    In this command, Z:\wim_mount is the mount folder, C:\Install.wim is the name and the location of the .wim file to mount, and 1 is the reference number of the specific volume in the .wim file.

  4. Do one of the following:

    • To deploy OEM-customized Help content, enter the following command to run Package Manager.

      start /w pkgmgr.exe /iu:OEMHelpCustomization /o:"z:\wim_mount\;z:\wim_mount\Windows"
      
    • To deploy corporation-customized content, enter the following command.

      start /w pkgmgr.exe /iu:CorporationHelpCustomization /o:"z:\wim_mount\;z:\wim_mount\Windows"
      

    Package Manager first searches for HelpConfig.xml on the computer on which it is running in %WINDIR%\Help\HelpConfig.xml. If HelpConfig.xml is not there, Package Manager searches in the same folder in the mounted image that is being modified.

Note   Package Manager can also be run from a Windows PE environment to modify a Windows image that is installed to a local hard drive. In this case, assuming that Windows is installed to the C drive, delete the section in the appropriate command line in Step 4 starting with /o: and replace it with the following command: /o:"c:\;c:\windows"

For more information about Windows PE, see Work with Windows PE.

See Also

Concepts

Customization Walkthroughs