Как исправить поврежденную контекстно-зависимую справку в IDE Delphi 2010

Спустя некоторое время моя справочная система D2010 сломалась.

Выделение ключевого слова, такого как TStringList, и нажатие клавиши F1 приводит к сообщению "Справка не найдена для контекста".

Если поместить курсор в поле свойства (например, ModalResult) в редакторе свойств и нажать клавишу "F1", то появятся песочные часы, и все.

При щелчке по главному меню справки IDE, а затем Delphi Help работает. Я могу ввести TStringList в поле поиска (в появившемся Microsoft Document Explorer, загруженном "Что нового - Embarcadero RAD Studio") и получить соответствующие результаты.

У кого-нибудь есть предложения, как это исправить?

6 ответов

Вы можете улучшить ситуацию, перестроив файлы справки.

Откройте командную строку и перейдите в папку $(BDS)\Help\Doc. Бежать H2Reg -u отменить регистрацию существующих разделов справки, а затем запустить H2Reg -r перерегистрировать. Затем запустите справку, и вы должны получить диалоговое окно, в котором говорится, что оно индексирует контент.

Если вы хотите больше информации о H2Reg.exe, просто запустите его без параметров из командной строки; появится диалоговое окно с подробной информацией о параметрах командной строки и их действиях. Вы также должны отсканировать через H2Reg.ini, так как он содержит комментарии к каждому разделу и то, что он влияет на вещи.

Кроме того, помощь в XE значительно улучшена, хотя ей еще предстоит пройти путь.

Я знаю 3 причины этой проблемы:

1 - По какой-то причине, если у вас не получается подключиться к Интернету, когда Rad Studio пытается загрузить справку, происходит сбой справки, и вам нужно будет закрыть и снова открыть Delphi.

2 - Другая причина в том, что вы можете получить поврежденную справку (это происходит, когда вы устанавливаете некоторые исправления от Microsoft, например, для Windows 7 sp1). Единственный способ в этом случае - переустановить справку (посмотрите Delphi).

3 - Это иногда случается, когда вы нажимаете F1, когда delphi пытается обновить редактор (поэтому избегайте этого).

Вы также должны быть уверены, что у вас есть все исправления delphi (справочные исправления исправляют множество проблем).

Но я скажу вам: система помощи Delphi действительно плохая (не помощь, а ее интеграция с Delphi).

В 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 (теперь он должен работать как положено)

У меня работает следующий пакетный файл (без закрытия 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

Попробуйте переустановить Microsoft Document Explorer

Методы использования h2reg.exe не работали для моего случая (RAD Studio XE3). Мне нужно несколько часов, чтобы найти свое решение. Основной причиной моей проблемы является сломанный Microsoft Document Explorer 2008. Я пытаюсь восстановить его из Панели управления -> Удалить приложение. Конечно, вы можете удалить его и установить обратно из многих источников, включая справочную систему RAD studio.

Попробуйте это, если другие способы не работают.

У меня возникла та же проблема, но исправление H2Reg никогда не работало для меня.:(Я попытался запустить Delphi RAD Studio XE2 в качестве администратора, хотя моя учетная запись пользователя уже была настроена как администратор, и протестировал F1, включая контекстную справку. Все работало, как и ожидалось:) После этого я закрыл Delphi, отключив опцию Запуск от имени администратора Открыл Delphi, и помощь сработала идеально.:)

Другие вопросы по тегам