Extracción del contenido de un archivo CHM (ayuda basada en HTML)

Si alguien ha pensado alguna vez que los archivos CHM están protegidos de algún modo contra "ingeniería inversa" o "descompilación" está completamente equivocado. Extraer su contenido resulta muy sencillo.

Curiosamente, es el propio motor de ayuda HTML de Windows el que proporciona esta funcionalidad. No hay más que ejecutar lo siguiente en una línea de comandos:

hh -decompile <carpeta> <archivo CHM>

Donde <carpeta> es la carpeta de destino y <archivo CHM> especifica la ruta del archivo CHM a "descompilar". Podremos tratar los ficheros extraídos como queramos, pudiendo incluso generar un nuevo archivo CHM con ayuda de los ficheros .HHC (tabla de contenidos) y .HHK (índice), y las herramientas del HTML Help Workshop. El archivo CHM resultante, aun construido con los mismos componentes, no tiene por qué ser idéntico al original.

Referencias:
HTML Help 1.4 SDK: Using Command Line Switches
HTML Help 1.4 SDK: Decompiling a Help File

Published 12/11/2007 11:34 por Ramón Sola
Comparte este post:

Comentarios

# Miguel said on 16 April, 2009 12:56 AM

Interesante... Me hubiera venido bien saber esto cuando tuve que traducir un programa (y su ayuda) hace ya mucho tiempo... Gracias por la información, siempre puede ser útil.

# Ramón Sola said on 27 April, 2009 09:44 PM

Gracias por el comentario. :-)

Licencia

El contenido de este blog se ofrece bajo el siguiente tipo de licencia de Creative Commons:

Creative Commons License

Búsqueda

Ir

Este blog

Sindicación

Notas

  • Por decisión del administrador, los visitantes que no inicien sesión (visitantes anónimos) no podrán enviar comentarios a los blogs de Geeks.ms, para lo cual deberán registrar una cuenta de usuario e identificarse a través de la misma. Disculpen las molestias que esto pueda causarles.

Acerca de los contenidos

La información ofrecida en este blog se proporciona tal cual, sin garantías de ningún tipo, y no otorga ningún derecho. Usted asume el riesgo de poner en práctica cuantos procedimientos se expongan aquí. En particular, si ha venido buscando alguna solución para una tarea o duda escolar y no le ha servido el contenido, por favor no me eche la culpa. ;-)

Las anotaciones del blog representan una visión válida en el momento en que fueron publicadas o actualizadas. Más allá de esas fechas no se puede garantizar la veracidad de la información expuesta ni la exactitud o fiabilidad de los enlaces.

Los comentarios son responsabilidad exclusiva de sus autores respectivos. El dueño del blog se reserva el derecho de editar, eliminar o no publicar aquellos comentarios que a su criterio infrinjan reglas básicas de respeto y convivencia en la red. En el caso de la edición, se expondrá claramente esta circunstancia y el motivo de la misma. El dueño del blog podrá asimismo borrar los enlaces que se desvíen demasiado de los temas tratados, muestren intenciones de autopromoción (publicidad descarada, spam...) o en general no inspiren confianza. Las direcciones de correo electrónico serán eliminadas o alteradas para reducir la posibilidad de que sean objeto de spam. El envío de comentarios implica la adhesión a estas condiciones.

Etiquetas

Archivo

Colegas en Geeks.ms

Otros bloggers españoles

Bloggers de Microsoft

Herramientas interesantes

Geeks.ms

Mi blog personal

Webs y comunidades amigas