Click here to Skip to main content
15,867,594 members
Articles / Mobile Apps

Help File Integration in Windows Mobile Pocket PC

Rate me:
Please Sign up or sign in to vote.
4.71/5 (34 votes)
8 Jan 2009CPOL2 min read 70.4K   793   26   32
Help file integration with Windows Mobile applications programmatically.

HelpIntigration

Introduction

This article is helpful for Windows Mobile, Smart Device application developers, regarding how to integrate help files programmatically to a targeted device. To develop help files, we have to follow some steps which I have described below.

The .NET Compact Framework allows users to register custom application Help files in Pocket PC's Help systems. It provides access to the Windows CE Help program using peghelp.exe, to display custom application Help files within Windows Mobile Pocket PC applications.

The Solution

How can we create and integrate a Help files in Windows Mobile Pocket PC applications? To create and integrate a help file in Windows Mobile Pocket PC applications, we will follow the steps given below:

Step 1

First, we will create a help file including the help topics that we want to show in our application. Create an HTML file using some specific tags. For example, we are creating "DEMO-HELP.htm" to be integrated as a Help file in our application.

HelpFileIntegration/html_help_file.PNG

Note: you can find a sample HTML help file to download from the top of this article.

Step 2

We now have to put this (DEMO-HELP.htm) file in our Windows Mobile Pocket PC device/emulator's \windows directory.

Step 3

Step 3 is achieved programmatically.

The Help file needs to be registered in Pocket PC 's Help File System. To install your Help file on the Pocket PC Help Systems, we have to create a shortcut file in the \Windows\Help folder. Create a shortcut to "DEMO-HELP.htm" in the \Windows\Help folder.

How to create a shortcut to "DEMO-HELP.htm"?

Create a text file on you PC and write 16#\windows\DEMO-HELP.htm to it and save this file using the same name as the Help file with a .lnk extension (DEMO-HELP.lnk). Now, you can put it in the \Windows\Help folder.

You can now check out the application Help integration successfully with the device help system. Tap Help from the Start menu. If your Help is not already displayed, choose All Installed Help from the View menu. Your Help should be included alphabetically in the list.

Code snippet for step 3

C#
private bool CreateLinkHelpFile()
{
    bool isLinkFileCreated = false;
    try
    {
        if (!System.IO.File.Exists(LINK_HELPFILE_PATH))
        {
            System.IO.StreamWriter sw = 
                    new System.IO.StreamWriter(LINK_HELPFILE_PATH);
            sw.Write("16#" + HELPFILE_PATH);
            sw.Close();
            sw = null;
            isLinkFileCreated = true;
        }
        else
        {
            isLinkFileCreated = true;
        }
    }
    catch (Exception ex)
    {
        MessageBox.Show("Link file does not create.", "CreateLinkHelpFile");
        Close();
    }
    return isLinkFileCreated;
}

LINK_HELPFILE_PATH is a variable which is assigned with the @"\Windows\Help" folder path. And it means insert the name of the Help file by the number of characters in the path and the number sign (#). This should be the only line in the file.

C#
protected override void OnHelpRequested(HelpEventArgs e)
{
   try
   {
       if (System.IO.File.Exists(HELPFILE_PATH))
       {
           Help.ShowHelp(this, HELPFILE_PATH);
           base.OnHelpRequested(e);
       }  
       else
       {
           MessageBox.Show("Help File Not Found", "Help Intigration");
       }
    }
    catch (Exception ex)
    {
       MessageBox.Show(ex.Message, "OnHelpRequested");
    }
}

Here, HELPFILE_PATH is a variable which is assigned with the @"\windows\DEMO-HELP.htm" HTML help file.

Points of interest

After installing the application, you are able to view the application help on your device:

HelpFileIntegration/help_show_000.PNG

HelpFileIntegration/help_show_001.PNG

HelpFileIntegration/help_show_002.PNG

HelpFileIntegration/help_show_003.PNG

Reference

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer (Senior) WmDev Technology
India India
Pavan is a Senior software developer, and has been in the industry since August 2005. He has experience in Windows Phone 7, Windows Mobile with Compact Framework, Python for S60, C#.NET, VB.NET, Windows Forms, ASP.NET, WCF, Silverlight, JavaScript and HTML.

Comments and Discussions

 
GeneralRe: the number before # Pin
PavanPareta17-Mar-11 19:41
PavanPareta17-Mar-11 19:41 
Generalnice article but Pin
Rupesh Kumar Swami14-Jan-09 1:42
Rupesh Kumar Swami14-Jan-09 1:42 
GeneralRe: nice article but Pin
PavanPareta14-Jan-09 17:34
PavanPareta14-Jan-09 17:34 
GeneralGood one... Pin
Rajesh Ramachandra12-Jan-09 23:52
Rajesh Ramachandra12-Jan-09 23:52 
Generalgood job done Pin
pramodverma12-Jan-09 23:51
pramodverma12-Jan-09 23:51 
GeneralEfforts Appreciated Pin
Aradhya Agarwal12-Jan-09 23:00
Aradhya Agarwal12-Jan-09 23:00 
GeneralRe: Efforts Appreciated Pin
PavanPareta12-Jan-09 23:06
PavanPareta12-Jan-09 23:06 
GeneralReally a nice Article Pin
~Khatri Mitesh~12-Jan-09 19:22
~Khatri Mitesh~12-Jan-09 19:22 
GeneralIf I used compact framework Pin
Sacha Barber12-Jan-09 1:59
Sacha Barber12-Jan-09 1:59 
GeneralRe: If I used compact framework Pin
PavanPareta12-Jan-09 3:19
PavanPareta12-Jan-09 3:19 
GeneralVery interesting article! Pin
Vesko Kolev10-Jan-09 3:12
Vesko Kolev10-Jan-09 3:12 
GeneralRe: Very interesting article! Pin
PavanPareta12-Jan-09 3:19
PavanPareta12-Jan-09 3:19 
GeneralHelp file integration Pin
yuvraj.raj10-Jan-09 0:39
yuvraj.raj10-Jan-09 0:39 
GeneralRe: Help file integration Pin
PavanPareta12-Jan-09 3:54
PavanPareta12-Jan-09 3:54 
Generalhi Pin
Ravenet10-Jan-09 0:20
Ravenet10-Jan-09 0:20 
GeneralRe: hi Pin
PavanPareta12-Jan-09 3:24
PavanPareta12-Jan-09 3:24 
GeneralIts Good Artical for integration of customised help with default help Pin
RajSharma.engr9-Jan-09 22:32
RajSharma.engr9-Jan-09 22:32 
GeneralGood one .. Pin
Member 38496769-Jan-09 20:58
Member 38496769-Jan-09 20:58 
GeneralUseful Article Pin
Nikhil Airun8-Jan-09 22:45
Nikhil Airun8-Jan-09 22:45 
GeneralRe: Useful Article Pin
PavanPareta12-Jan-09 3:52
PavanPareta12-Jan-09 3:52 
GeneralExcillent Contents Pin
Pankaj Kumar Gupta8-Jan-09 21:04
Pankaj Kumar Gupta8-Jan-09 21:04 
GeneralRe: Excillent Contents Pin
PavanPareta12-Jan-09 3:52
PavanPareta12-Jan-09 3:52 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.