【问题标题】:How to fix broken context sensitive help in IDE of Delphi 2010如何修复 Delphi 2010 IDE 中损坏的上下文相关帮助
【发布时间】:2011-06-06 07:58:30
【问题描述】:

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

突出显示像 TStringList 这样的关键字并按 F1 会导致 消息“找不到上下文帮助。”

将光标放在属性中的属性字段(如 ModalResult) 编辑器并按 F1 会显示一个沙漏,仅此而已。

单击 IDE 的主菜单帮助,然后 Delphi 帮助工作。一世 可以在搜索字段中键入 TStringList(在 Microsoft 文档中 出现的资源管理器,加载了“新增功能 - Embarcadero RAD Studio”) 并得到适当的结果。

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

【问题讨论】:

  • 尝试重新安装 Delphi 的文档或者修复它?
  • 你应该庆幸它曾经工作过!我只是打开帮助窗口,然后复制/粘贴到搜索窗口中。即使这样,搜索结果通常也很差。有谁知道在 XE 的帮助下情况是否有所好转?
  • 在delphi 2006中这是一个标准特性。
  • XE 上下文帮助效果更好,但仍然存在我无法使用它的情况。

标签: delphi delphi-2010


【解决方案1】:

您可以通过重建帮助索引文件来使事情变得更好。

打开命令提示符,然后导航到 $(BDS)\Help\Doc 文件夹。运行H2Reg -u 取消注册现有的帮助主题,然后运行H2Reg -r 重新注册。然后启动帮助,您应该会看到显示它正在索引内容的对话框。

如果您想了解有关 H2Reg.exe 的更多信息,只需从命令行不带参数地运行它即可;它将显示一个对话框,其中包含有关命令行开关及其作用的详细信息。您还应该通过 H2Reg.ini 进行扫描,因为它在每个部分都有 cmets 以及它对事物的影响。

顺便说一句,XE 中的帮助大大得到了改进,尽管它还有很长的路要走。

【讨论】:

  • +1 我认为注册是 h2reg -r 。感谢您的提示,我现在正在试一试。
  • 在 JCL 安装程序为我破坏后,我能够使用它来修复 DXE2 中的帮助。
【解决方案2】:

我知道这个问题的 3 个原因:

1 - 出于某种原因,如果您在 rad studio 尝试加载帮助时 Internet 出现故障,则帮助崩溃,您将需要关闭并重新打开 delphi。

2 - 另一个原因是您可能会获得损坏的帮助(例如,当您从 microsoft 安装一些修复程序(例如 windows 7 sp1)时会发生这种情况)。在这种情况下,唯一的方法是重新安装帮助(查看Delphi)。

3 - 当您在 delphi 尝试刷新编辑器时按 F1 时有时会发生这种情况(因此请避免使用它)。

您还需要确保您拥有所有 delphi 的补丁(帮助补丁纠正了很多问题)。

但我会告诉你:delphi 帮助系统真的很糟糕(不是帮助,而是它与 Delphi 的集成)。

【讨论】:

    【解决方案3】:

    在 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 不起作用)
    • 在 XE5 上也工作过,h2reg.exe -u / -r 没有工作
    【解决方案4】:

    以下批处理文件适用于我(无需关闭 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
    

    【讨论】:

      【解决方案5】:

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

      【讨论】:

        【解决方案6】:

        使用 h2reg.exe 的方法不适用于我的案例 (RAD Studio XE3)。 我花了几个小时才找到我的解决方案。 我的问题的根本原因是损坏的 Microsoft Document Explorer 2008。 我尝试从控制面板-> 卸载应用程序修复它。 当然,您可以从许多来源删除它并重新安装它,包括 RAD studio 的帮助系统。

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

        【讨论】:

          【解决方案7】:

          尝试重新安装 Microsoft 文档资源管理器

          【讨论】:

            猜你喜欢
            • 2015-11-10
            • 1970-01-01
            • 2016-09-06
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2010-11-08
            • 1970-01-01
            相关资源
            最近更新 更多