none
Al hacer la ayuda con Html Help Workshop para un programilla de vb 6.0, ¿Donde está el fallo? RRS feed

  • Debate general

  • Buenas compañeros, a ver si me pueden ayudar con algo que me trae de cabeza.

    Tengo un pequeño programa en vb 6.0 con 3 formularios, esto es lo de menos, tengo problemas con él pero esa no es la historia.

    El caso es que quería ponerle una ayuda, un archivo .chm

    Como todos lo ponían tan fácil me decidí por hacerlo con Html Help  Workshop 4y pico.

    Hice las páginas web con dreamweaver.

    Entre al Html Help Workshop, metí los archivos

                Introduccion.html

                Principal.Html

                Captura.Html

    y despues hice la tabla de contenido ToC.hhc

    Pongo un Folder vacio sin dirección llamado Manual y todo lo demás dentro.

    No hago indice pues no creo que me haga falta (es poca cosa)

    Guardo el proyecto como Ayuda.hhp y compilo

    Ahora el problema, quiero enlazar la ayuda a mi vb 6.0

    En VB6.0, en programa y en propiedades del proyeto indico la dirección de mi archivo de ayuda.

     Vuelvo al HTml Help Workshop para poner los índices, me fio del manual de ayuda, que está en inglés.

     Paso 1

    Creo un archivo de texto, le llamo "topics.txt" en el pongo

    ----------

    .topic intro

    introduccion del programa

    .topic prince

    pantalla principal

    .topic capt

    pantalla de captura

    ------------- y lo guardo  "topic.txt"

     Paso 2

    Creo el Header, algo como encabezados que según entendí es lo siguiente:

    -------------

    #define intro 1000

    #define prince 2000

    #define capt 3000

    --------------  y lo guardo con extension .h    "header.h"

    Paso 3

    En el Workshop, en proyecto voy al botón de APIHtmlInformation o algo parecido

    En la pestaña "TextPopUps" pongo

                en Header File ---> Header.h

                en text File  ----> topic.txt

    En la pestaña "Map"

                en Header File ---> Header.h

    En la pestaña "Alias" pulso "ADD" y relleno

                1000 = Html\Introduccion.html

                2000 = Html\Principal.html

                3000 = Html\Captura.html

    Guardo el proyecto y todas las filas, compilo como "ayuda.chm"

     Vuelvo al VB 6.0, abro el programa, voy a todos los formularios y pongo el KeyPreview = True en todos.

    No tengo botón de Whatsthisbutton así que lo dejo como está a False

    WhatsthisHelp no se que es lo dejo en False

    Voy al HelpContextid y le doy valores:

                Form1 ---> HelpContextid =1000

                Form2 ---> HelpContextid =2000

                Form3 ---> HelpContextid =3000

    Pues no funciona, ejecuto, pulso ayuda y me sale un MSGBox "HTML Help Author Message"

    HH_Help_Context called without a [MAP] section.

    Despues de esto me carga la ayuda pero en la primera página siempre,

    Mi pregunta es ¿Cual es mi error?, ¿Alguna idea?...

    Muchas gracias por vuestra atención y espero que me podais responder cuanto antes.

    viernes, 7 de diciembre de 2012 17:40

Todas las respuestas

  • Ya lo he solucionado.

    En el Html Help workshop en lugar de lo anterior en "Alias" pongo:
        intro = Html\Introduccion.html
        prince = Html\Principal.html
        capt = Html\Captura.html

    Con esto funciona perfectamente.
    Un saludo y muchas gracias, espero que por lo menos a alguien le sirva esto de ayuda.

    He encontrado el problema de que si instalo mi programa en otra dirección no carga la ayuda, lo he solucionado de la siguiente forma:

    En VB6.0, en programa y en propiedades del proyeto borro la dirección de mi archivo de ayuda.

    En lugar de esto en el formulario principal (MDI en mi caso) en el evento Load escribo:

    app.helpfile=app.path & "\miarchivo.chm"

    ¿Como marco como resuelta?

    • Editado delosnervios miércoles, 19 de diciembre de 2012 10:24
    sábado, 8 de diciembre de 2012 11:53