This directory contains the FixPaks for VisualAge for C++ for Windows, Version 3.5 (US English version). The FixPaks are broken down into a number of different subcomponents to help simplify the FixPak distribution. Within each subcomponent, the FixPaks are cumulative, so you only need to apply the latest one for each subcomponent. These FixPaks are designed to work with the US English version of VisualAge for C++. If you try to install them on a national language version of the product, the results may be unpredictable. The FixPaks use the following name convention: - The first two characters are alway WT. - The next character indicates the subcomponent: C - Compiler (including C/C++ compilers, ILINK, ILIB) D - Documentation (none released yet) O - Open Class Libraries S - Open Class source code T - Toolkits (including Win32 SDK and Win32s) U - Utilities (including debugger, browser, performance analyzer) V - Visual Tools (including Visual Builder and Data Access Builder) W - WorkFrame - The next two characters are the version number of the product. - The last character is the level of the FixPak. So, WTC351 is the first compiler FixPak for VisualAge for C++ Version 3.5. WTC352 is the second compiler FixPak. WTV351 is the first visual tools FixPak. Each FixPak is in a separate subdirectory. See the readme.txt file in each subdirectory for details on what you need to do to apply the FixPak. Order of applying FixPaks: 1. reboot 2. WTC354 3. WTO353 4. WTW353 5 reboot 6. WTV353 7. WTU353 8. WTT353 9. reboot 10. If you have installed the OpenClass source code, apply WTS353 at any time. ------------------------------------------------------------------------ Each FixPak is provided as a set of files. To install this FixPak perform the following steps : (1) Make sure you are currently in the directory into which the fixpak was unzipped. It should contain either the file "SERVICE.EXE", or the file "SERVICE.BAT" (2) Issue the following command : SERVICE The FixPak may be installed to any disk accessible to your system. The service program itself must run on Windows NT 3.51 or higher, or Windows 95. ------------------------------------------------------------------------ The following conditions must exist for FixPak installation to be successful: (1) The product installed must NOT be the IBM VisualAge C++ for Windows DEMO 60 days Try-Buy Product. (2) No IBM VisualAge C++ for Windows tools can be open in any session when you install the FixPak. (3) The FixPak level must be equal to or greater than the previously installed level (if any). Note that FixPaks are cumulative. (4) If you are installing the FixPak onto an installed version of the product, at least one component that the FixPak addresses must have been installed using a "Typical" install. Service will only be applied to components installed using a "Typical" install. ------------------------------------------------------------------------ Updating Browser Database (PDL) Files ===================================== A) Why do I need to update my Browser database files? The Browser provides database files (.PDL files) for the VisualAge for C++ class libraries. By using the Load and Merge cascade menus from the File menu in the Browser, you can load this information, or merge it with information from your own programs. When the VisualAge components issue new FixPaks, a change may occur in the contents or the date and time stamps of some of the header files. If this occurs, the Browser may display some incorrect information, or identify that some files are out-of-date or incompatible. This indicates that you need to update the Browser database files. You should also recreate any .PDB, .PDL, .PDD, and .PDL files that you have. B) When do I update my Browser database files? The Browser has the following database files: User Interface Classes - userintf.pdl Collection Classes - collectn.pdl I/O Stream Classes - iostream.pdl Complex Math Classes - complex.pdl Database Access Classes - database.pdl Application Support Classes - applsupp.pdl OLE Framework Classes - oleframe.pdl The information in the above files can be affected by FixPaks from the following components: - Compiler - IOC Class Libraries - Visual Builder - Data Access Builder After installing the FixPaks for the above components, then you can update the Browser database files. C) How do I update my Browser database files? If you have a complete install version of VisualAge for C++ on your machine, then change to the INCLUDE directory, and enter: nmake -f ibrspdl.mak Make sure the CPPMAIN environment variable is pointing to the product install directory (and where the INCLUDE directory is located). Make sure the INCLUDE environment variable includes the location where the VisualAge for C++ include files are installed. If you get your PDL and header files from the INCLUDE directory on a LAN, then ask the person who installed the FixPak to run the ibrspdl.mak makefile. The following files (located in the INCLUDE directory) are used to rebuild the Browser database files: - ibrspdl.mak - brsfound.exe - ui1.cpp - ui2.cpp - ui3.cpp - cc1.cpp - cc2.cpp - cc3.cpp - cc4.cpp - cc5.cpp - cc6.cpp - iostream.cpp - complex.cpp - database.cpp - applsupp.cpp - oleframe.cpp Performance Analyzer ==================== 1. After installing this FixPak, you should re-link your applications with the new CPPWPA3.OBJ. 2. Two problems documented in the original README.TXT file have been fixed. The items were described in the 7th and 8th bullets under "2.13.2 Restrictions and Known Problems." These bullets said: If your EXE is not in the current directory or in a directory specified by the PATH environment variable, and it uses a DLL that is in the current directory, then the Performance Analyzer cannot load the program. Instead the operating system displays an error message stating "Unable to locate DLL". The error message shows the path that the operating system searched, which includes the current directory. and If your DLL is not in the current directory or in a directory specified by the PATH environment variable, the functions in your DLL will be traced; however, they will not be resolved. In the trace file, they will appear as addresses instead of names. 3. The following errors may occur when using Windows 95 with a small virtual memory size: a) you get the following message: 24100I: /Ti, /Gh or /De not used or CPPWPA3.OBJ not linked into preloaded DLLs and EXEs. Possible load on call DLLs. even though you compiled and linked your program with all of the required options. b) you get a message saying "Internal error 1E" c) you get messages about page faults If any of these conditions occur, you should increase the size of your virtual memory. To change your virtual memory under Windows 95: -- click on the Start button -- click on Settings -- click on Control Panel -- double-click on the System icon -- click on the Performance tab -- click on Virtual Memory... -- click on "Let me specify my own virtual memory settings" -- select a hard drive that has at least 40MB of free space -- select at least 40MB as the minimum space -- click on OK Debugger ========= The disassembler used in the debugger has been updated. These changes affect the following areas: 1. It fixes some defects in the stepping algorithms of the debugger that manifested themselves as "debuggee ran to completion when stepping". 2. The disassembler will now correctly disassemble Pentium and Pentium Pro specific instructions. 3. The disassembler will now correctly disassemble MMX instructions; the debugger does not support displaying the MMX registers. 4. Argument sizes are now included in the disassembled code line. This makes looking at NPX instructions somewhat easier. 5. The debugger now recognizes that the Intel opcode 0x82 is actually unassigned, even though current Intel processors treat opcodes 0x80 and 0x82 as identical. The disassembler will distinguish between the two by following the mnemonics for the 0x82 opcodes with two question marks.