如何修复Delphi 2010集成开发环境中上下文敏感帮助失效的问题

3

工作一段时间后,我的D2010帮助系统出了问题。

选中像TStringList这样的关键字并按F1键会出现“未找到上下文的帮助”消息。

将光标放在属性字段(如ModalResult)中,然后按F1键会显示一个沙漏,仅此而已。

点击IDE的主菜单帮助,然后选择Delphi帮助可以正常使用。我可以在搜索栏(在Microsoft Document Explorer中加载了“Embarcadero RAD Studio的新功能”)中输入TStringList,并获得适当的结果。

有人有任何建议如何解决这个问题吗?


1
尝试重新安装Delphi的文档,或者可能需要修复吗? - user497849
2
你应该感激它曾经能够工作!我只是让帮助窗口保持打开状态,然后复制/粘贴到搜索窗口中。即使这样,搜索结果通常也相当糟糕。有人知道XE版本的帮助是否有所改善吗? - David Heffernan
1
在 Delphi 2006 中,这是一个标准功能。 - Charles Faiga
XE上下文帮助功能更好了,但仍有一些情况我无法使用它。 - Warren P
7个回答

6
你可以通过重建帮助索引文件来改善情况。
打开命令提示符,导航到你的 $(BDS)\Help\Doc 文件夹。运行 H2Reg -u 以取消注册现有的帮助主题,然后运行 H2Reg -r 重新注册。然后启动帮助,你应该会得到一个对话框,显示正在索引内容。
如果你想了解更多关于 H2Reg.exe 的信息,只需在命令行中不带参数运行它;它将显示一个包含命令行开关及其作用细节的对话框。你还应该浏览 H2Reg.ini,因为它对每个部分及其影响有注释。
另外,值得一提的是,XE 版本的帮助文档已经大大改进,尽管仍有改进空间。

+1 我认为应该使用h2reg -r进行注册。感谢你的提示,我现在正在试用它。 - David Heffernan
我能够使用这个工具来修复JCL安装程序破坏了DXE2帮助文件的问题。 - wades

2
以下批处理文件适用于我(而且不会关闭Delphi):
REM Kill running instances of Microsoft Document Explorer
taskkill /f /im dexplore.exe

REM Go to the Delphi Help Files folder
IF EXIST  "%programfiles%\Embarcadero\RAD Studio\8.0\Help\Doc" PUSHD "%programfiles%\Embarcadero\RAD Studio\8.0\Help\Doc"
IF EXIST  "%programfiles(x86)%\Embarcadero\RAD Studio\8.0\Help\Doc" PUSHD "%programfiles(x86)%\Embarcadero\RAD Studio\8.0\Help\Doc"

REM Unregister Delphi Help Files
h2reg.exe -u

REM Register Delphi Help Files
h2reg.exe -r

2
我知道这个问题有三个原因:
1 - 由于某些原因,如果在rad studio加载帮助时您的互联网连接失败,帮助程序会崩溃,您需要关闭并重新打开delphi。
2 - 另一个原因是您可能拥有损坏的帮助文件(当您安装一些来自微软的补丁,例如Windows 7 SP1时会发生这种情况)。在这种情况下,唯一的方法是重新安装帮助文件(请查看Delphi)。
3 - 当您在delphi尝试刷新编辑器时按F1时,有时会发生这种情况(因此请避免这样做)。
您还需要确保安装了所有delphi的补丁(帮助补丁可以纠正许多问题)。
但我告诉你:delphi帮助系统真的很差(不是帮助本身,而是它与Delphi的集成)。

2
在Delphi XE中,我使用以下方法解决了这个问题:
  • 退出Delphi XE
  • 导航到 "Embarcadero\RAD Studio\8.0\Help\Doc" 文件夹
  • 将rad.hxs、vcl.hxs和codeex.hxs文件移动到另一个文件夹中(如果dexplore.exe正在运行,则可能需要停止它)
  • 重新启动Delphi XE并再次尝试F1帮助(对我来说还没有起作用)
  • 退出Delphi XE
  • 如果dexplore.exe正在运行,则停止它
  • 将三个文件复制回 "Embarcadero\RAD Studio\8.0\Help\Doc" 文件夹
  • 重新启动Delphi XE并再次尝试F1帮助(现在应该正常工作了)

使用XE6也可以工作(h2reg.exe -u / -r无法工作) - DiGi
也在XE5上工作过,但h2reg.exe -u / -r无法正常工作。 - L Q

0

尝试重新安装Microsoft Document Explorer


0
我也遇到了同样的问题,但是 H2Reg 修复方法对我没有用。:( 我尝试以管理员身份运行 Delphi RAD Studio XE2,即使我的用户帐户已经设置为管理员,并测试了包括上下文帮助在内的 F1。一切都按预期工作 :) 然后,我关闭了 Delphi,关闭了“以管理员身份运行”选项,重新打开了 Delphi,帮助功能完美地工作了。:)

0

使用h2reg.exe的方法对我的情况(RAD Studio XE3)无效。

我花了几个小时才找到解决方案。

我的问题根源是Microsoft Document Explorer 2008损坏了。

我尝试从控制面板 -> 卸载应用程序中修复它。

当然,您可以从许多来源(包括RAD studio的帮助系统)中删除并重新安装它。

如果其他方法不起作用,请尝试这个。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接