1.00 1.50
WINDOWS
kbtool kbbuglist
The information in this article applies to:
- The ClassWizard included with:
Microsoft Visual C++ for Windows, versions 1.0 and 1.5
SYMPTOMS
Even though the object ID of a VBX control is highlighted in Class Wizard,
the Messages list box does not show any messages. The VBX control may
appear to be installed in App Studio and it may even appear on the control
palette when this occurs.
You can demonstrate this with IDC_CIRCLE in the CCircleDialog class in the
VBCIRCLE example.
CAUSE
There are two causes of this behavior, as follows:
- If you do not explicitly install a VBX control using the App Studio
Install Controls option, message information is not available to
Class Wizard. If you open, in App Studio, a dialog box that
contains a VBX control, App Studio marks the VBX as installed and
adds the control to the control palette, but event information is
not available until you explicitly install the control.
- If you manually modify the resource file for the VBX control, Class
Wizard may not recognize the special format CONTROL statement a VBX
requires. When you install a VBX control, it is queried for
messaging and name information. The name information is case
sensitive. If the case of either of the first two parameters of the
CONTROL statement does not match the parameters stored in
APSTUDIO.INI that App Studio uses to query the information, Class
Wizard does not show information about the events.
With regard to the VBCircle example, the CCircleDialog class encapsulates a
dialog box that contains a CIRC3.VBX control. The CONTROL statement in the
RC file for CIRC3.VBX does not specify the required information with the
correct case. Therefore, you cannot see messages for IDC_CIRCLE even if you
correctly install CIRC3.VBX.
RESOLUTION
If Class Wizard does not display messages for a particular VBX
control, perform the following four steps:
- Choose Install Controls from the App Studio File menu.
- If the VBX is not installed, select it on the search path and
choose Install.
- If the VBX is already installed, select it and choose Remove. Then
select it on the search path and choose Install.
- Choose Close to save the control installation changes.
To monitor messages for the VBCircle control, edit the VBCIRCLE.RC file
with a text editor. Change the CONTROL statement to read as follows:
CONTROL "CIRC3.VBX;CIRC3;",...
Then load the IDD_CIRCLE_DLG dialog box into AppStudio and select
File.Save. This will re-set the ClassWizard information and you will then
be able to see the notification messages. Note that CIRC3.VBX needs to have
been properly installed in ApStudio as listed above.
STATUS
Microsoft has confirmed this to be a problem in App Studio versions 1.0 and
1.5 for Windows. We are researching this problem and will post new
information here in the Microsoft Knowledge Base as it becomes available.