NDICE 1. OBJETIVO. 2. ALCANCE. 3. REFERENCIAS. 4. TIPOS DE AYUDA PARA SISTEMAS MICROSOFT WINDOWS. 4.1. Formato HLP. 4.2. Formato CHM. 5. GUIA PARA GENERAR AYUDAS EN FORMATO CHM. 5.1. Conceptos. 5.2. Crear un archivo CHM paso a paso. 6. COMPILAR CON HTML Help Workshop. 7. INSERCIN DE LA AYUDA EN VISUAL BASIC. 7.1. Adaptando un proyecto de Visual Basic. 7.2. Propiedad HelpContextID. 7.3. Lanzar la ayuda correspondiente a un formulario. 8. INSTALACIN DE MICROSOFT HTML HELP WORKSHOP.
1. OBJETIVO
El objeto de este documento es servir de gua para la generacin de archivos de ayuda de aplicaciones desarrolladas bajo sistemas operativos Windows (versiones 95 y superior).
2. ALCANCE
Este documento debera aplicar a aquellos proyectos software que sean desarrollados para ser ejecutados bajo sistemas operativos Microsoft Windows (versiones 95 y superior).
3. REFERENCIAS
Para la redaccin de este documento se han consultado las siguientes referencias:
Artculo Crear ayudas para aplicaciones VB publicado por Jos Luis Monte Galiano en www.redvisual.net/articulos/otros/hlp/indice.htm. Artculo Displaying Help by Using the HtmlHelp API publicado en la web oficial de Microsoft Office 2000/Visual Basic Programmers Guide.
Todos los ejemplos de esta Gua para la generacin de ayudas han sido desarrollados con el programa Microsoft HTML Help Workshop que es un programa gratuito de Microsoft para generar archivos de ayuda y que puede descargarse desde el sitio web oficial de Microsoft (www.microsoft.com).
WorkShop con el que es posible compilar los dos formatos actuales: HLP y CHM. Para generar este tipo de ayudas son necesarias las siguientes herramientas:
Un procesador de textos, para crear el cuerpo de la ayuda en formato RTF. Un procesador que soporte el formato de texto enriquecido bastara (por ejemplo Microsoft Word). El compilador de ayuda, para crear el proyecto y archivo de contenido (HPJ y CNT respectivamente) y el resultado final, el HLP.
Un editor de pginas web, para generar el contenido de la ayuda (archivos de extensin HTM o HTML). Puede usarse por ejemplo el editor gratuito de Microsoft (Frontpage Express), Microsoft Word u otro editor de pginas web. El compilador de ayuda, para crear el proyecto, archivo de contenido e ndice (HHP, HHC y HHK respectivamente) y, finalmente compilar todo para obtener el archivo de ayuda definitivo con extensin CHM. Una herramienta gratuita como Microsoft HTML Help Workshop es suficiente para realizar este trabajo.
Una vez creados los diferentes captulos de nuestra ayuda en diferentes archivos HTM ( o HTML), estos son aglutinados en un archivo de proyecto con extensin HHP. A este proyecto se le aaden :
Archivos H: Aaden un ID para identificador de captulo dado, que luego ser aprovechado por nuestras aplicaciones Visual Basic para lanzar la pgina de ayuda correspondiente. Archivos HHK: ndices. Archivos HHC: Tablas de contenido.
Con todo esto, compilamos el proyecto y obtenemos un archivo de ayuda con extensin CHM. La versin del Help WorkShop recomendada para este tipo de ayudas es la 4.7 del ao 1.999. Esta aplicacin contiene un conversor de proyectos para ayudas HLP a CHM. Por lo tanto, y en teoria, es posible utilizar esta aplicacin para ambos tipos de ayudas.
OPTIONS: Opciones de compilacin. ALIAS: Identificador de Nombre de alias y archivo HTM. MAP: Archivo con la definicin de los nombres de alias y un ID para cada uno que despus ser usado en nuestras aplicaciones
Visual
Basic
para
lanzar
la
ayuda
de
contexto
(propiedad
HelpContextID). Para crear un nuevo proyecto arrancamos Microsoft HTML Help Workshop y pulsamos en el botn New de la barra de herramientas (o en la opcin New del men File). En la ventana que aparece elegimos Project y pulsamos OK, en la ventana siguiente nos pregunta si deseamos convertir un archivo de ayuda en formato HLP a formato CHM, pulsar en Siguiente porque no se quiere hacer esto. Y a continuacin pedir el nombre que se quiere dar al proyecto (en nuestro caso, lo hemos colocado en el directorio C:\ayudahtml\ejemplo.hhp ). Luego pregunta si tenemos archivo de contenido, ndice y pginas web ya creados. Como no lo tenemos no marcamos nada y pulsamos en Siguiente. Una vez terminado se visualiza la pantalla del proyecto.
ventana
Project
podemos indicar las pginas html que tendr nuestra ayuda (esto nos servir para poder vincular ms tarde el archivo de contenido con las pginas). En la pantalla Topic Files se hace click en el botn Add ... y se seleccionan los archivos htm y html que compondrn nuestra ayuda.
Veamos a continuacin los valores de los parmetros para las distinas secciones. OPTIONS En esta seccin damos a conocer al compilador de ayudas informaciones tales como :
Title: Titulo de nuestra ayuda. Language: ID del idioma utilizado para nuestra ayuda. Index file: Archivo de indice, (HHK) Contents file: Archivo de contenido, (HHC). Compiled file: Nombre del archivo de ayuda compilado, (CHM).
Para poder establecer estos valores hay que hacer click en el botn Change project options de la pestaa Project. Antes de establecer valores como el archivo de contenido o de ndice, ser necesario crearlos previamente (para ello hacer click en la pestaa Contents e Index respectivamente). Un ejemplo para esta seccin seria : [OPTIONS] Compatibility=1.1 Compiled file=EJEMPLO.chm Contents file=EJEMPLO.hhc Default topic=paginas\principal.htm Display compile progress=No Index file=EJEMPLO.hhk Language=Espaol (alfabetizacin internacional) Title=Ayuda de ejemplo en formato HTML ALIAS Cada archivo HTM de nuestra ayuda puede identificarse por un alias, (nombre o variable), que lo identifica y relaciona con un ID que es utilizado posteriormente en nuestras aplicaciones Visual Basic. Para poder establecer estos alias hay que hacer click en el botn HTML Help API Information de seccin ALIAS. Por ejemplo : [ALIAS] ID_topic0=paginas\principal.htm ID_topic1=paginas\capitulo1.htm ID_topic2=paginas\captiulo2.htm MAP Relacin de archivos H en el que se definen los ALIAS descritos en la seccin anterior y se relacionan con un ID que se utilizar posteriormente en nuestras aplicaciones Visual Basic. Al igual que la anterior se accede haciendo click el botn HtmlHelp API Information de MAP. Por ejemplo : [MAP] #include Ejemplo.h la pestaa Project y en la seccin la pestaa Project y en la
Crear el archivo de contenido (HHC). Para crear el archivo de contenido hacer click en la pestaa Contents o bien en la opcin New del men File eligiendo la opcin Contents file (archivo de contenido): En un archivo HHC se define la estructura del libro de contenidos de nuestra ayuda. El proceso es ir aadiendo carpetas y pginas para ir generando los libros de la ayuda. Una carpeta es un contenedor de carpetas y de pginas. Para ello hacer click en los botones y .
En la ventana Table of Contents Entry (entrada de la tabla de contenido), se solicitar el texto que se desea visualizar ( Entry title), as como el archivo html al que se desea vincular ese tpico de la ayuda (para vincularlo hacer click en el botn Add y seleccionar la pgina correspondiente). Crear el archivo de ndice (HHK) [opcional].
10
La creacin de un archivo de ndice es opcional. En l referenciamos todas las cadenas de bsqueda para cada captulo. Para crear un nuevo archivo pulsar en la pestaa correspondiente ( Index) o bien en la opcin New del men File elegir Index. Este apartado es similar a los anteriores de manera que se visualizan una serie de botones para insertar una nueva clave y vincularla con diferentes pginas. Si pulsamos en el icono aparecer una ventana en la determinadas que se podrn Aadir pginas y vincularlas con
palabras clave. Por ejemplo si en un tpico de la ayuda hablamos del entorno grfico de nuestra aplicacin podemos poner como palabras clave entorno, grfico, mens o lo que se desee y vincularlo con la/las pginas deseadas mediante la opcin Add de la ventana que aparezca cuando se hace click en el icono correspondiente. Crear el archivo de cabecera, declaracin de ID de contexto (H). En un archivo con extensin H definimos, (con el comando #define), los alias que referenciaremos a cada captulo, (archivos HTM/L), de nuestra ayuda. En nuestro ejemplo, se crea el archivo EJEMPLO.H con el siguiente contenido. #define ID_topic0 0 #define ID_topic1 1 #define ID_topic2 2
11
12
Los argumentos de la funcin HtmlHelp y su respectiva funcionalidad son los siguientes: Argumento HwndCaller Descripcin Es un manejador de una ventana de aplicacin o Null. Este manejador debe ser usado como el propietario o el contenedor de la ayuda HTML, dependiendo como sea usado. En VBA, en PszFile vez de usar vbNullString establecer este parmetro a 0. Es el string que se corresponde con el path del archivo de ayuda. Opcionalmente puede especificar en que tipo de
13
UCommand
ventana se ha de visualizar. Es la accin a realizar, o como mostar tpicos de ayuda. Pude ser usado con cualquiera de los dos comandos declarados como constantes HH_HELP_CONTEXT o HH_DISPLAY_TOPIC. Slo se ha llegado a probar con xito HH_HELP_CONTEXT. Especifica el topic ID.
DwData
14
Una vez se ha terminado de extraer los archivos aparece el programa de instalacin que nos pide que aceptemos la Licencia de uso, en la pantalla titulada License Agreement pulsar el botn Accept. Una vez aceptado el acuerdo de licencia se visualiza el asistente de instalacin de Microsoft HTML Help Workshop (ver siguiente imagen), pulsar Next >.
15
A continuacin aparece otra pantalla que solicita que seleccionemos el directorio de destino de instalacin del programa. Podemos seleccionar uno existente pulsando en Browse ... o bien escribir una ruta deseada (por ejemplo c:\Archivos de programa\HTML Help Whorkshop . Y pulsar Next > cuando se haya seleccionado/escribo el directorio de destino. Se visualizar a continuacin la siguiente pantalla: Que solicita que seleccionemos el tipo de instalacin deseada. Elegir la
16
A continuacin pide que seleccionemos el grupo de programas donde deseamos que sean creados los iconos de acceso al programa o bien si queremos que se cree un grupo de programas nuevo. Elegir lo deseado (preferiblemente crear un grupo de programas que se llame Microsoft HTML Help Workshop). Y pulsar Next >. Por ltimo se pide un nombre para personalizar la copia que se va a instalar del programa. Escribir lo que se desee y pulsar Next > . Se comienzan a copiar los archivos de instalacin y cuando esta termina mostrar el siguiente mensaje:
Pulsar OK para terminar. Se habr creado un grupo de programas denominado Microsoft HTML Help Workshop, desde el cual se puede arrancar el programa haciendo click en el elemento HTML Help Workshop.