A tárgymutató
Sorozatunk első részében elkezdett help-et fejlesztjük most tovább, vagyis tárgymutatóval egészítjük ki.
Új tárgymutató létrehozásához válasszuk ki a Solution Explorer-ben a Help projektet, majd a Project - Add new item menüpont kiválasztása után megnyíló ablakban a Help Workshop Project Items elemnél a Keyword Index-et.
Ennek hatására létrejön egy új állomány, Index1.HxK névvel. Ha megnézzük ennek tartalmát, akkor láthatjuk, hogy ez egy XML formátumú állomány, melyben a tárgymutatóval kapcsolatos beállításokat végezhetjük el.
<?xml version="1.0"?>
<!DOCTYPE HelpIndex SYSTEM "ms-help://hx/resources/HelpIndex.DTD">
<HelpIndex DTDVersion="1.0" Name="K">
</HelpIndex>
A tárgymutatónak három alapvető típusát különbözteti meg a Visual Studio.NET, melyet egy-egy betűvel jelöl:
- K - a tárgymutatóban megjelenő kulcsszavak
- F - F1 gombra, vagy a dinamikus help-ben előkereshető kulcsszavak
- A - két oldal közötti hivatkozás egy help-en belül, vagy több help állomány között.
Egy-egy oldalhoz a következőképpen rendelhető tárgymutató:
- nyissuk meg az adott HTM oldalt.
- a <head> szekcióba helyezzünk el egy XML formátumú bejegyzést, melyben felsoroljuk a szükséges kulcsszavakat, melyeknél azt szeretnénk, hogy erre az oldalra mutasson
<xml>
<MSHelp:Keyword Index="K" Term="Első" />
</xml>
Minden megadott kulcsszó egy-egy MSHelp:Keyword bejegyzésben kell, hogy helyet kapjon. Itt az Index attribútum adja meg a kulcsszó három lehetséges típusa közül, hogy melyikbe tartozik. A Term attribútumban adható meg maga a kulcsszó.
A tárgymutató ezek után a help fordításakor automatikusan elkészül.
Telepítő csomag készítése
Válasszuk a File - New - Project menüpontot, majd a megjelenő ablakban a Project Types panelon keressük elő a Setup and Deployment Projects tételt.
Itt válasszuk ki a Setup Project elemet. Ezzel létrejön egy új projekt, mely a telepítő csomag készítést végzi el.
Ezt követően a Project - Add - Project output menüpont kiválasztásával a megjelenő ablakban válasszuk ki a Compiled HXS Files elemet, majd a TestApp projektből a Primary Output elemet.
Ennek hatására a telepítő csomagba bekerül a TestApp.exe és a HelpProject2.HxS állomány, melyekre a kliens oldalon szükség van.
A projekt lefordítása után létrejön egy MSI állomány, melyet a kliens oldalon kell telepítenünk.
A tesztalkalmazás
Készítünk most egy egyszerű kis alkalmazást, melybe egyetlen gombot helyezünk, aminek lenyomásakor elindítjuk a help-et.
Amikor a help készült és a Visual Studio.NET fejlesztői környezetéből futtattuk, akkor megfigyelhető volt, hogy egy dexplore.exe nevű alkalmazás indul el és ez kezeli a HxS kiterjelsztésű help állományunkat.
Mivel a Help 2-vel egy új névtér (ms-help://) is a gépünkre kerül, így akár egy böngészőn keresztül is elérhetővé válik a súgónk. Indítsunk el egy böngészőt és írjuk be ezt a címet:
ms-help://HelpProject2/HelpProject2/source/htmlfile1.htm
Ha programból indítanánk el a súgót, akkor a dexplore.exe alkalmazást kell meghívnunk a megfelelő paraméterrel.

Ha a Help 2 az alapértelmezett könyvtártól eltérő helyre lett telepítve, akkor a Form1.cs forráskód 101. sorában javítsuk ki az elérési útvonalat, hogy az a dexplore.exe-re mutasson.
A Process osztály Start függvényével képesek vagyunk elindítani egy programból egy másikat, mely jelen esetben a dexplore lesz. Paraméterként a /helpcol kapcsolót, valamint a megcímzendő help-et kell átadnunk.
private void button1_Click(object sender, System.EventArgs e)
{
Process.Start(@"C:\Program Files\Common Files\Microsoft Shared\Help\dexplore.exe", @"/helpcol ms-help://HelpProject2");
}