BUG: ClassView Add... Errors with Read-Only Project Files

Last reviewed: March 11, 1998
Article ID: Q182323
The information in this article applies to:
  • The development environment included with:

        - Microsoft Visual C++, 32-bit Editions, versions 5.0, 5.0sp1,
          5.0sp2, 5.0sp3
    

SYMPTOMS

ClassView offers the following four options on its context menu for classes:

  • Add Member Function
  • Add Member Variable
  • Add Virtual Function
  • Add Windows Message Handler

These operations fail if project source files are read-only.

The first two operations fail displaying one of the following messages:

   One or more of the files for ... are read-only.

   The implementation file for class ... cannot be found.

The last two operations listed above fail without any message or visual cue. They may not be presented as options.

CAUSE

Source file permissions are read-only, perhaps due to source control.

RESOLUTION

Change the source file permissions to permit write access. In a source control environment, this may require checking out the file, or having the file's current owner check it back in.

STATUS

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

MORE INFORMATION

The .ncb file contains ClassView browser information. If it is read-only at the time Visual C++ opens the project, ClassView is unavailable. The .clw file contains ClassWizard information. If it is read-only at the time Visual C++ opens the project, the Add Virtual Function and Add Windows Message Handler options are unavailable on the ClassView context menu for classes.

Steps to Reproduce Behavior

  1. Create a new MFC AppWizard (exe) project.

  2. Change the file permissions to read-only for all files except the .ncb file.

  3. Right-click a class in ClassView; select Add Member Function or Add Member Variable.

    NOTE: A message box appears, but the Add… dialog box does not.

  4. Right-click Add Virtual Function or Add Windows Message Handler.

    NOTE: No visible response occurs.

  5. Close the workspace and reopen it.

  6. Right-click a class in ClassView. The Add Virtual Function and Add Windows Message Handler options do not appear on the context menu.

For additional information, please see the following article(s) in the Microsoft Knowledge Base:

   ARTICLE-ID: Q140252
   TITLE     : PRB: ClassWizard Disables Add Function & Add Variable
               Buttons

REFERENCES

Visual C++ online books: "File Types Created for Visual C++ Projects."

Keywords          : vcbuglist500 VwbIss WizardIss
Version           : WINNT:5.0,5.0sp1,5.0sp2,5.0sp3
Platform          : winnt
Issue type        : kbbug
Solution Type     : kbpending


================================================================================


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: March 11, 1998
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.