Самый большой и исчерпывающий ресурс - http://helpware.net/FAR/
.
Для VB.Net.
1. Добавляем на форму HelpProvider и называем его HelpProvider.

2. Определяем его свойства

Добавляем строки вида
При загрузке формы (реакция для клавишы F1)
HelpProvider.HelpNamespace =
Application.StartupPath & "\" & AssName & ".chm"
HelpProvider.SetHelpNavigator(Me, HelpNavigator.TableOfContents)
При определении меню

Private Sub mnuHelpChm_Click(ByVal
sender As System.Object, ByVal e As System.EventArgs) Handles mnuHelpChm.Click
Help.ShowHelp(Me, HelpProvider.HelpNamespace)
End Sub
Private Sub mnuIndexHelp_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuIndexHelp.Click
' Show index of the help file.
Help.ShowHelpIndex(Me, HelpProvider.HelpNamespace)
End Sub
Private Sub mnuSearchHelp_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuSearchHelp.Click
' Show the search tab of the help file.
Help.ShowHelp(Me, HelpProvider.HelpNamespace, HelpNavigator.Find,
"")
End Sub
При инициализации
программы для определении контекстной помощи

HelpProvider.SetHelpKeyword(txtFileFolder,
Strings.TTtxtFileFolder)
HelpProvider.SetHelpNavigator(txtFileFolder, HelpNavigator.KeywordIndex)
3. В классе Strings
Public TTtxtFileFolder
As String = "Путь для Word файла. Тащите
сюда файл или используйте кнопку."
Используем класс Strings для определения свойств контрола, таких как
Text и ToolTip. Это удобно, так как находится в одном месте, легко может быть
сопоставлено с другими описаниями, а также дает возможность относительно
легкого перевода на другой язык. Пример файла Strings приведен в приложение 3.
4. ToolTip определяются так
ToolTip.SetToolTip(txtFileFolder, Strings.TTtxtFileFolder)
Таким образом, и для контекстной справки
и для ToolTip используем одно определение.
Нет разницы, нет расхождений. Скажу больше, блок комментариев в тексте программы
может выглядит следующим образом
''' --------------------------------------------------------------------*
''' <summary>Путь для Word файла. Тащите сюда файл или используйте кнопку.</summary>
''' <history>[DPosudin] 7 июля 2005 г. 17:19:00</history>
''' --------------------------------------------------------------------*
Private Sub txtFileFolder_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles txtFileFolder.DragEnter
Это означает, что только один раз в теге <summary> описан метод и это описание используется четырежды
– как ToolTip, как индекс для контекстной подсказки, в документации
и в описании метода.
Для Access а
также других языков, см. статьи
фирмы Indigoware Ltd.