Pergunta

De volta aos velhos dias, a Ajuda não foi trivial, mas possível:gerar um pouco de funk .arquivo rtf com tags especiais, executá-lo através de um compilador, e você tem um arquivo WinHelp (.hlp) que, na verdade, funciona muito bem.

Em seguida, a Microsoft decidiu que o WinHelp não foi quadril e legal mais e mudamos para o CHM, até o ponto em que eles realmente axed WinHelp de Vista.

Agora, CHM talvez bom, mas todo mundo que tentou abrir uma .arquivo chm na Rede vai saber o nice "a Navegação para a página da web foi cancelada" de tela que é causado por restrições de segurança.

Enquanto existem diversas maneiras de fazer CHM trabalho fora da rede, esta não é uma boa escolha, porque quando um usuário pressiona o Botão de Ajuda ele quer ajuda e não ter para fazer um pouco de funk configurações.

Linha Inferior:Eu acho CHM absolutamente inutilizável.Mas com WinHelp não sendo uma opção mais quer, gostaria de saber quais são as alternativas, especialmente quando se trata de integrar com o meu Aplicativo (por exemplo,para WinHelp e CHM existem funções que permitem que você para saltar diretamente para um tópico)?

PDF tem a desvantagem de exigir que o Adobe Reader (ou um dos mais leves aquelas que não muitas pessoas usam).Eu poderia viver com isso vendo como este é um tipo de padrão hoje em dia, mas você pode dizer que é confiável para saltar para uma determinada página/âncora?

Arquivos HTML parece ser a melhor escolha, em seguida, você só tem que lidar com diferentes navegadores CSS (e outras coisas).

Editar: Eu estou olhando para criar os meus próprios Arquivos de Ajuda.Como eu sou um fã do "Nenhuma Instalação, Basta Extrair e Executar o" Filosofia, eu tinha esse problema, que muitas vezes, no passado, porque muitos dos meus usuários irá executá-lo fora da rede, o que faz com que exatamente esse problema.

Então eu estou procurando um mais robusto e à prova do futuro de forma a fornecer ajuda para o meu blog sem ter um código diferente a ajuda do sistema para cada aplicação que eu faça.

CHM é um formato muito legal, mas que a Segurança Material torna inutilizável, como um sistema de Ajuda é suposto fornecer ajuda para o usuário, para não gerar ainda mais problemas.

Foi útil?

Solução

HTML seria a melhor escolha, SÓ SE você gostaria de servi-los a partir de um servidor web público.Se você fechar pacote com seu aplicativo, todos os arquivos e imagens e folhas de estilo (e ...) ) ) gostaria de fazer CHM olhar como um presente dos deuses.

Dito isso, quando, na verdade, incluído no pacote de instalação, (em vez de ser servido pela rede), descobri que os arquivos CHM para funcionar bem.

OTOH, outra armadilha sobre arquivos CHM:Mesmo se você tentar abrir um arquivo CHM em um local o disco, você pode topar com o bloqueio de segurança se, inicialmente, você baixou de algum lugar, porque o ficheiro pode ser marcado como "surgiu a partir de uma fonte externa", quando ele foi obtido.

Outras dicas

Eu não gosto da opção de html, e mudou-se de simples de HTML para CHM por compressão e indexação-los.Até mesmo usá-los em um punhado de não-clientes do Windows mesmo.Ele simplesmente resolveu o constante pouco de quebra de colocar as pessoas na rede (profundidade de aninhamento limitada, estranho fecho efeitos), antivírus, que morreu em diretórios com 30000 arquivos html, e 20 minutos do tempo de descompressão durante a instalação em um sistema mais antigo, a segurança do navegador zonas e características, erros de cálculo do espaço necessário no instalador, etc.

E, então, eu não incluem até mesmo as pessoas que começam a "corrigir" a eles, a 3ª parte do produto com defeito "integração" tenta etc, reclamações sobre slowliness (navegador start-up)

Todos nós esperou anos para os problemas desaparecem como sistemas Operacionais e hardware melhorado, mas os problemas mantido recorrente em um bedazzling número de variedades e era mais do que suficiente.Encontramos chmlib, e decidimos que poderiam sempre usar algo com base neste como escapar com um simples leitor externo, se o sistema operacional fornecido queridos parou de trabalhar e passou.

Enquanto isso, nós também temos um compilador, por isso estamos MS gratuito à prova de futuro.Isso não significa que nunca vai mudar (soluções com o local da web-servidores parecem favorito hoje em dia), mas pelo menos temos uma escolha.

Nosso software é distribuído localmente para os clientes e servido a partir de um compartilhamento de rede.Optou-se por gerar tanto um arquivo CHM e um conjunto de ficheiros HTML para servir de rede.Os usuários de iniciar o programa localmente, use o arquivo CHM, e os usuários recebendo o seu programa servido a partir de um compartilhamento de rede tem de usar os arquivos HTML.

Nós usamos Ajuda e Manual e, portanto, pode facilmente produzir os dois tipos de saída a partir do mesmo projeto de origem.Os arquivos HTML também contêm capacidades de procura e não necessita de um servidor web, de modo que não é uma solução ideal, funciona bem.

Até agora o único tipo de arquivo para o Windows parece quebrado, de uma forma ou de outra:

  • WinHelp - e obsoletos.
  • Html (CHM) - obsoleto em Vista, não funciona a partir do compartilhamento de rede, que funciona muito bom
  • Ajuda do Microsoft 2 (HXS) - isso parece funcionar direito, até o ponto quando não o faz, índices corrompidos ou similar, isso é usado pelo Visual Studio 2005 e, acima de, como um exemplo

Se você não quiser usar um instalador e você não quer que o usuário execute quaisquer etapas adicionais para permitir que arquivos CHM através da rede, por que não voltar a cair para WinHelp?Vista não inclui WinHlp32.exe fora da caixa, mas é livremente disponíveis para download para Vista e Server 2008.

Depende de como importar a documentação on-line é o seu produto, uma boa documentação de infra-estrutura pode ser complexo para se estabelecer, mas uma vez feito isso compensa.Aqui está como fazemos -

  • Fonte de ajuda DITA compilant XML armazenados no SCC (ClearCase).
  • Ajuda para editar XMetal
  • Ajuda a compilação personalizado Abrir DITA Toolkit, com o costume, Perl/Java pré-processamento
  • Ajudar fonte de referências cruzadas aplicações de recursos em tempo de compilação .RC ficheiros, etc.
  • Ajuda resultados a partir de uma única fonte, PDF, CHM, Eclipse Ajuda, HTML.
  • Único repositório de código-fonte produz ajuda para vários produtos 10+ compartilhado com milhares de tópicos.

A partir do que você descreve, eu ia olhar o Eclipse Ajudar, não é simples de integrar .NET ou aplicações de MFC, você basicamente tem que fazer a ajuda de mapeamento para resolver a solicitação para uma URL, em seguida, acionar o URL para o Eclipse Ajudar wrapper ou um navegador.

É a questão de como gerar seus próprios arquivos de ajuda, ou qual é o melhor formato de arquivo de ajuda?

Pessoalmente, acho que o CHM para ser excelente.Uma das primeiras coisas que eu faço quando a configuração de uma máquina é baixar o PHP Manual em formato CHM (http://www.php.net/download-docs.php) e adicionar um atalho para ele no O Crimson Editor.Então, quando eu pressionar F1 ele carrega o CHM e executa uma pesquisa por palavra meu cursor está no (ótimo para rápida referência de função).

Se você está fazendo "só extrair e executar", você está indo para executar em problemas de segurança.Isto é especialmente verdadeiro se você estiver usuários estão executando o Vista (ou posterior).há uma razão pela qual você queria evitar embalagens suas aplicações dentro de um instalador?Usando um instalador iria aliviar a "fonte externa" problema.Você seria capaz de usar .arquivos chm, sem quaisquer problemas.

Nós usamos InstallAware para criar nossos pacotes de instalação.Não é barato, mas é muito bom.Se o custo é a sua preocupação, WIX é open source e bastante robusto.O WIX tem uma curva de aprendizagem, mas é fácil trabalhar com.

PDF tem a desvantagem de exigir que o Adobe Reader

Eu uso O Foxit Reader no Windows, em casa e no trabalho.Muito menor e muito rápido para abrir.Muito útil quando você está se perguntando o que exatamente a80000326.pdf é e por que é que entopem sua pasta de documentos.

Eu acho que a solução que vai acabar acontecendo com o nosso aplicativo está hospedando os arquivos de ajuda a nós mesmos.Isso nos dá acesso imediato aos arquivos e a capacidade de mantê-los atualizados.

O que eu pretendo é ter o conteúdo carregado em uma enorme série de arquivos XML, cada um contendo a ajuda de um item específico.Este XML deve conter links para outros arquivos XML.Gostaria de usar o XSLT para exibir o conteúdo conforme necessário.

Dependendo do licenciamento, podemos edificar um cliente específico de arquivo XSLT, a fim de adequar o olhar e a sensação de que eles precisam.Podemos precisa ser capaz de mostrar apenas de ajuda para versões específicas do nosso produto e que isso pode ser feito através da filtragem de coisas em XSLT.

Eu uso um pacote comercial chamado AuthorIT que pode gerar uma série de formatos diferentes, tais como chm, html, pdf, word, windows ajuda, xml, xhtml, e alguns outros que eu nunca ouvi falar (não dita um sino?).É um sistema de gerenciamento de conteúdo orientada para as necessidades da documentação técnica escritores.A vantagem é que você pode usar e re-utilizar o mesmo conteúdo para criar um conjunto de guias e, em seguida, gerar-los em diferentes formatos.

Assim a linha de fundo em relação à questão de escolher chm ou html ou o que quer é que se você estiver usando isso, você não está bloqueado em um determinado formato, mas você pode fornecer vários, entre os quais o usuário pode escolher, e você pode até mesmo adicionar mais formatos como você ir junto, sem nenhum custo extra.

Se você tiver apenas um guia para criá-lo não vai valer a pena o seu tempo, mas se você tiver um conjunto de documentação para gerir, em seguida, ele é o melhor do meu conhecimento.O seu apoio é muito útil também.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top