BUG: F1 Help Broken for Some Controls in VB 4 16-Bit (145725)



The information in this article applies to:

  • Microsoft Visual Basic Professional Edition, 16-bit, for Windows 4.0
  • Microsoft Visual Basic Enterprise Edition, 16-bit, for Windows 4.0

This article was previously published under Q145725

SYMPTOMS

Pressing F1 while one of the following controls are selected causes the error message, 'Cannot open Help file.' The controls that are affected are:
   Apex Data Bound Grid
   Crystal Report Control
   Microsoft Common Dialog Control
   Microsoft Data Bound List Controls
   Microsoft Grid Control
				

CAUSE

The information cached in the OCA files for these controls is incorrect. Also, in one case (with the DBGrid) the registry key 'HelpDir' does not point to the correct location for the relevant help file.

RESOLUTION

To fix the problem, first manually edit the Registry to point the HelpDir key for the DBGrid control to the correct location and then delete all OCA files to force Visual Basic to re-create them. Follow this procedure:

  1. On NT, start the registry editor with the command line regedt32. On a Win16 OS, use the command line regedit /v. This problem only occurs when running Visual Basic 4.0 16-bit on Windows NT or a 16-bit Windows operating system.
  2. On NT, switch to the HKEY_CLASSES_ROOT window and open the TypeLib key. On a 16-bit Windows system, find the TypeLib key (approximately 3/4 of the way towards the bottom of the Registry pane).
  3. Scroll through the typelib GUIDs (Globally Unique Identifiers) and look for a GUID starting with the sequence 00028C01. This GUID is the typelib for the DBGrid. The entire GUID is 00028C01-0000-0000-0000-000000000046.
  4. Once the correct TypeLib GUID has been found, expand that key and change the setting for the HelpDir key to point to the Visual Basic 4.0 directory on the machine.
  5. Do a search on the machine's hard drive(s) for all files with a .OCA extension. Delete all of these files. OCA files are used by Visual Basic as caches for some OCX information. When Visual Basic is started, OCA files are created for all OCXs which do not possess them.
  6. Stop and restart Visual Basic 4.0 16-bit. All of the context-sensitive help links should now work for the problem controls.

STATUS

Microsoft has confirmed this to be an issue in the Microsoft products listed at the beginning of this article. We are researching the problem and will post more information here in the Microsoft Knowledge Base as it becomes available.

Modification Type:MajorLast Reviewed:10/15/2002
Keywords:kbBug kbControl kbDSupport KB145725