DOCUMENT:Q135049 07-MAY-2001 [visualc] TITLE :FIX: Rebuilding .CLW File Does Not Restore Link to ODL File PRODUCT :Microsoft C Compiler PROD/VER::2.0,2.1 OPER/SYS: KEYWORDS:kbwizard kbMFC kbVC200bug kbVC210 kbVC220fix kbClassWizard kbGrpDSTools kbNoUpdatekbbug ====================================================================== ------------------------------------------------------------------------------- The information in this article applies to: - Microsoft Visual C++, versions 2.0, 2.1 ------------------------------------------------------------------------------- SYMPTOMS ======== A project's Object Description Language (ODL) file is not updated when new automation properties and methods are added using ClassWizard. The project's ClassWizard (.clw) file has been deleted and rebuilt prior to the occurrence of this behavior. All properties and methods added before the rebuilding of the ClassWizard file are still correctly listed in the ODL file. CAUSE ===== When the .clw file is rebuilt by the development environment, the ODLFile= keyword line is not added to the new file. RESOLUTION ========== The ODLFile= entry must be manually added to the .clw file so that ClassWizard can add properties and methods to the ODL file. The ODLFile= entry can be added by using the development environment editor or Notepad. Manually adding the ODLFile= entry will not automatically update the ODL file to bring it back in synch with ClassWizard. Any properties and methods that were added via ClassWizard while the ODLFile= entry was missing from the .clw file must be either manually added to the ODL file or removed and then added again by using the ClassWizard. STATUS ====== Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This bug was corrected in Visual C++ version 2.2 for Windows NT. MORE INFORMATION ================ An example of the ODLFile= line can be found in the .clw file provided with the AutoClik sample. In this sample, the [General Info] section of the Autoclik.clw file includes the following line: ODLFile=autoclik.odl ClassWizard uses this reference to a specific ODL to determine the file to update when new properties and methods are added. When the .clw file is rebuilt using the ClassWizard option from the development environment Resource Editor, the ODLFile= reference line is not included in the newly built .clw file. After the rebuild, ClassWizard does not issue a warning when adding new properties and methods to the new .clw file even though the changes are not reflected in the ODL file. This problem does not appear in Visual C++ version 4.0. Visual C++ 4.0 does not use a keyword in the .clw file to keep track of the name of the ODL file. Additional query words: 2.00 2.10 ====================================================================== Keywords : kbwizard kbMFC kbVC200bug kbVC210 kbVC220fix kbClassWizard kbGrpDSTools kbNoUpdate kbbuglist kbfixlist Technology : kbVCsearch kbAudDeveloper kbVC200 kbVC210 Version : :2.0,2.1 Issue type : kbbug Solution Type : kbfix ============================================================================= 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. Copyright Microsoft Corporation 2001.