首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Windows桌面应用程序中实现帮助功能的最佳方法--限制应用程序知识库授权访问

在Windows桌面应用程序中实现帮助功能的最佳方法--限制应用程序知识库授权访问
EN

Stack Overflow用户
提问于 2020-08-24 03:34:37
回答 1查看 376关注 0票数 0

在Windows桌面应用程序中实现帮助功能的最佳方法如下:

参考文献:注-2

  1. Microsoft编译的HTML帮助是Microsoft专有的联机帮助格式。
  • 可解压缩(工具7-Zip,苏门答腊等)
  • 前身微软WinHelp /后继微软帮助2
  • 支援胜利10

参考文献:https://en.wikipedia.org/wiki/WinHelp

  1. .hlp Microsoft WinHelp是可由Microsoft浏览器winhelp.exe或winhlp32.exe显示的在线帮助文件的专有格式。将-decompile文件放入其源文档中: HPJ、CNT、RTF、BMP和SHG WinHelp文件将在单独的窗口中打开(帮助作者可以控制帮助文件是在会话之间存储用户的设置,还是始终以默认大小和位置打开)。
  • 有标题、一行菜单(“文件”、“编辑”、“书签”、“选项”和“帮助”)典型的按钮包括内容、索引、回退和打印,以及<<和>>按钮来浏览文件。帮助作者还可以创建自定义按钮,以跳转到特定主题或执行其他操作。-End of support -- winhlp32的开源版本在Windows 10上也能工作,它是WineVDM的一部分。

参考文献:2

  1. Microsoft_Help_2是一种用于在线帮助文件的专有格式,由微软开发,并于2001年作为Visual .NET (2002)和MSDN库的帮助系统首次发布。Microsoft Help 2.x是Microsoft Visual Studio 2002/2003/2005/2008以及Office 2007和Office 2010中使用的帮助引擎。
  • MicrosoftHelp2.x文件有一个".hxs“扩展名
  • 一个开源的“转换”工具可以用来解压缩hxs文件。

参考文献:查看器

  1. Microsoft (HV)是Microsoft 2010及其相关的MSDN附带的脱机帮助系统(本地帮助)。

所有上述方法都有一个限制,即编译后的帮助文件可以被解压缩并进一步重新分发,这是我想要限制的。I希望只允许授权用户访问知识库,而授权用户也不应该能够进一步复制或分解知识库,并与未经授权的用户进一步共享知识库。

EN

回答 1

Stack Overflow用户

发布于 2020-08-24 08:45:47

简而言之,如果编译成WinHelp (.hlp)、HTMLHelp (.chm)、Help2 (.hxs)或Help Viewer文件(.mshc),您就无法防止反编译。

Winhelp大约30岁,HTMLHelp大约23岁!请注意,HTMLHelp (CHM文件)的反编译器仍然是Windows 10操作系统的一个集成部分。

您知道,自WinHelp (.hlp)和HTML (.chm)以来,微软已经创建了其他帮助系统,但它们与各种系统绑定在一起:

  • MS help 2.0 for Visual Studio 2002/2003/2005/2008 & Office帮助。
  • AP帮助Windows操作系统/OEM帮助(基于MS 2)
  • MS帮助查看器1.0用于2010帮助。
  • MS help Viewer 2.0 for Visual Studio 2012 & Windows 8 OS/OEM帮助。

这些格式没有得到充分披露和记录。他们被认为是微软内部的。

一些注意事项:

  • WinHelp (.hlp)格式从20世纪90年代初就已经出现,并被HTML 1.x (.chm)所取代。微软强烈建议你在十年前离开WinHelp。
  • 除非集成到Visual中,否则仍然建议您使用help (.chm)进行Windows应用程序帮助。
  • 然而,今天,越来越多的人转向基于web的帮助(例如使用Markdown文本=> HTML)。

根据您的需求,您可以在中使用以下思想进行实验:

  • 基于web的帮助:为基于web的帮助使用密码保护区域(知识库)
  • 使用密码保护的CHM到EXE转换器2.0加密并将CHM转换为exe,防止编辑、复制和打印。您只能在没有密码的情况下将chm转换为exe,还可以通过PC绑定到您的用户。只有您可以为用户创建打开的密码。易于分发和保护CHM文件。

编辑:

您的第一个要求“我希望允许只有授权用户访问知识库”可以通过基于web的帮助解决。您经常会遇到一些网站,您无法免费访问所有的部分:为了能够查看网站某些部分的内容,您需要注册并获得登录名和密码才能进入这些受限区域。一个典型的例子是公司网站,其中保留了对成员区域的访问权,以便销售人员和合作伙伴查看帮助文档和价目表,或者是需要登录访问可下载内容的门户。

如果您真的想为Windows上的软件创建结构化应用程序帮助,包括上下文敏感的帮助,CHM通常是更好的。但即便如此,也有一条学习曲线。

您的第二个需求".和授权用户也不应该能够进一步复制或解压缩知识库。只有付出很大的努力才能解决。不知道-也许加密/解密到内存流并将其传递给文件流。

基于Web的帮助示例:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63554389

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档