27 votes

Fichiers d'aide Windows - quelles sont les options ?

À l'époque, l'aide n'était pas triviale mais possible : générez un fichier .rtf funky avec des balises spéciales, passez-le dans un compilateur, et vous obtenez un fichier WinHelp (.hlp) qui fonctionne vraiment bien.

Ensuite, Microsoft a décidé que WinHelp n'était plus à la mode et est passé à CHM, jusqu'à ce qu'il supprime WinHelp de Vista.

Les fichiers CHM sont peut-être intéressants, mais tous ceux qui ont essayé d'ouvrir un fichier .chm sur le réseau connaissent l'écran "La navigation vers la page Web a été annulée", qui est dû aux restrictions de sécurité.

Bien qu'il existe des moyens de faire fonctionner CHM en dehors du réseau, ce n'est guère un bon choix, car lorsqu'un utilisateur appuie sur le bouton d'aide, il souhaite obtenir de l'aide et ne pas avoir à effectuer des réglages bizarres.

Conclusion : Je trouve CHM absolument inutilisable. Mais comme WinHelp n'est plus une option non plus, je me demande quelles sont les alternatives, surtout quand il s'agit d'intégrer mon application (c'est-à-dire que pour WinHelp et CHM, il existe des fonctions qui vous permettent de sauter directement à un sujet) ?

Le PDF présente l'inconvénient de nécessiter le lecteur Adobe (ou l'un des lecteurs plus légers que peu de gens utilisent). Je pourrais m'en accommoder puisque c'est une sorte de norme de nos jours, mais pouvez-vous lui dire de manière fiable de sauter à une page/ancre donnée ?

Les fichiers HTML semblent être le meilleur choix, il suffit ensuite de s'occuper des différents navigateurs (CSS et autres).

Editar: Je cherche à créer mes propres fichiers d'aide. Comme je suis un fan de la philosophie "No Setup, Just Extract and Run", j'ai eu ce problème à plusieurs reprises dans le passé parce que beaucoup de mes utilisateurs l'exécutent hors réseau, ce qui cause exactement ce problème.

Je suis donc à la recherche d'un moyen plus robuste et évolutif de fournir de l'aide à mes utilisateurs sans avoir à coder un système d'aide différent pour chaque application que je crée.

Le CHM est un format vraiment agréable, mais ce dispositif de sécurité le rend inutilisable, car un système d'aide est censé fournir de l'aide à l'utilisateur, et non générer encore plus de problèmes.

12voto

Ishmaeel Points 7720

Le HTML serait le meilleur choix suivant, UNIQUEMENT SI vous les servez à partir d'un serveur web public. Si vous essayez de l'intégrer à votre application, tous les fichiers (et les images (et les feuilles de style (et ...) ) feraient passer le CHM pour un cadeau des dieux.

Cela dit, lorsqu'ils sont intégrés au paquet d'installation (au lieu d'être servis sur le réseau), les fichiers CHM fonctionnent très bien.

Par ailleurs, les fichiers CHM présentent un autre inconvénient : Même si vous essayez d'ouvrir un fichier CHM sur un serveur de local disque, vous risquez de vous heurter au blocage de sécurité si vous l'avez initialement téléchargé de quelque part, car le fichier pourrait être marqué comme "provenant d'une source externe" lors de son obtention.

4voto

Marco van de Voort Points 15378

Je n'aime pas l'option html, et je suis en fait passé du simple HTML aux CHM en les compressant et en les indexant. Je les utilise même sur une poignée de clients non-Windows. Cela a simplement résolu les petits problèmes constants des gens qui le mettent sur le réseau (profondeur d'imbrication limitée, effets de verrouillage étranges), l'antivirus qui mourait dans les répertoires avec 30000 fichiers html, et 20 minutes de temps de décompression lors de l'installation sur un système plus ancien, les zones de sécurité et les fonctionnalités du navigateur, les mauvais calculs de l'espace nécessaire dans l'installateur etc.

Et je n'inclus même pas les personnes qui commencent à les "corriger", les produits tiers avec des tentatives d'"intégration" défectueuses, etc., les plaintes concernant la lenteur (démarrage du navigateur).

Nous avons tous attendu des années que les problèmes disparaissent au fur et à mesure que les systèmes d'exploitation et le matériel s'amélioraient, mais les problèmes continuaient à se reproduire dans un nombre éblouissant de variétés, et nous en avons eu assez. Nous avons trouvé chmlib, et avons décidé que nous pourrions toujours utiliser quelque chose basé sur celui-ci comme échappatoire avec un simple lecteur externe, si ceux fournis par le système d'exploitation cessaient de fonctionner et changeaient.

Entre-temps, nous disposons également de notre propre compilateur, ce qui nous permet d'être à l'abri de l'avenir sans MS. Cela ne signifie pas que nous ne changerons jamais (les solutions avec des serveurs web locaux semblent être les plus populaires de nos jours), mais au moins nous avons le choix.

3voto

Lasse V. Karlsen Points 148037

Notre logiciel est à la fois distribué localement aux clients et servi à partir d'un partage réseau. Nous avons choisi de générer à la fois un fichier CHM et un ensemble de fichiers HTML pour les servir à partir du réseau. Les utilisateurs qui lancent le programme localement utilisent le fichier CHM, et les utilisateurs qui reçoivent le programme à partir d'un partage de réseau doivent utiliser les fichiers HTML.

Nous utilisons Aide et manuel et peut donc facilement produire les deux types de résultats à partir du même projet source. Les fichiers HTML contiennent également des fonctions de recherche et ne nécessitent pas de serveur web. Bien que cette solution ne soit pas optimale, elle fonctionne bien.

Jusqu'à présent, tous les types de fichiers uniques pour Windows semblent cassés d'une manière ou d'une autre :

  • WinHelp - obsolète
  • HtmlHelp (CHM) - obsolète sous Vista, ne fonctionne pas à partir d'un partage réseau, mais sinon, il fonctionne très bien.
  • Microsoft Help 2 (HXS) - cela semble fonctionner jusqu'au moment où cela ne fonctionne plus, index corrompus ou autres, c'est utilisé par Visual Studio 2005 et plus, par exemple.

3voto

Chris Miller Points 2552

Si vous ne voulez pas utiliser un programme d'installation et que vous ne voulez pas que l'utilisateur effectue des étapes supplémentaires pour autoriser les fichiers CHM sur le réseau, pourquoi ne pas vous rabattre sur WinHelp ? Vista n'inclut pas WinHlp32.exe dans la boîte, mais il est possible de le télécharger. disponible gratuitement en téléchargement pour Vista et Server 2008.

3voto

titanae Points 1481

Cela dépend de l'importance de la documentation en ligne pour votre produit. Une bonne infrastructure de documentation peut être complexe à mettre en place, mais une fois qu'elle l'est, c'est payant. Voici comment nous procédons

  • Source d'aide DITA compilant XML, stocké dans SCC (ClearCase).
  • Aide à l'édition XMetal
  • Compilation d'aide, personnalisée Boîte à outils Open DITA avec prétraitement personnalisé en Perl/Java.
  • Les références croisées des sources d'aide aux ressources des applications au moment de la compilation, les fichiers .RC, etc.
  • Aide aux livrables à partir d'une source unique, PDF, CHM, Aide sur Eclipse , HTML.
  • Un référentiel unique produit de l'aide pour plusieurs produits 10+ avec des milliers de sujets partagés.

D'après ce que vous décrivez, je me pencherais sur l'aide Eclipse. Elle n'est pas simple à intégrer dans les applications .NET ou MFC, vous devez essentiellement faire le mappage de l'aide pour résoudre la demande vers une URL, puis envoyer l'URL vers le wrapper d'aide Eclipse ou un navigateur.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X