MORE INFORMATION
Overview
The Microsoft Visual Studio 6.0 Service Pack 2 addresses known binary
compatibility bugs with certain run-time redistributable files in Visual
Studio 6.0. This service pack also provides all the source files and debug
versions of the Microsoft Visual C++ run-time components for Visual C++
developers.
Before installing this service pack, shut down all Visual Studio
applications. Install this service pack whenever you have updated or
changed any of the applications in Visual Studio to ensure that you have
the latest fixes.
The Microsoft Visual Studio 6.0 Service Pack 2 is inclusive of Service Pack
1.
Installation
To install the service pack, insert the compact disc into your computer's
CD-ROM drive. From the root directory of the service pack, run Setup. Setup
will detect the language of your computer's operating system and run one of
the following setups:
\fra\setup (French)
\deu\setup (German)
\enu\setup (English)
\jpn\setup (Japanese)
\esp\setup (Spanish)
\kor\setup (Korean)
\chs\setup (Simplified Chinese)
\cht\setup (Traditional Chinese)
\ita\setup (Italian)
If your language setting is not in this list, the English version of Setup
will run.
Determining the Files That Setup Installs
Setup might not install all the files included in this service pack on your
computer. If you do not have a copy of the file on your computer, or if the
file on your computer is a more recent version than the one in the service
pack, Setup will not update the file on your computer.
Updating Files You Previously Modified
The primary way Setup determines which files to replace is by checking the
version information in a file's resources. However, some files, such as
text files and nonbinary files, have no resource information. In these
cases, Setup uses the time stamp to determine which files need to be
replaced.
If you have altered the time stamp on any of the Visual Studio component
text files or files that do not have version information, then Setup may
not replace those files. Source files and header files are examples of some
files you might have changed.
Determining the Update History of the Products Based on File
Versions
To determine which updates have been made since the initial release of a
product, you will need to examine the version number in the properties of
one or more files.
To determine the update status of a product use the following steps:
- Look in the table below to determine which file you want to examine.
In some cases, you may need to examine more than one file to determine
fully the product's update history.
- For each file, right-click the file in Windows Explorer, then click
Properties.
- Click the Versions tab, and compare the version listed with the
version in the table.
The following table lists the developer tools that have been updated in
this Visual Studio 6.0 Service Pack. It also lists the key files you should
check to ascertain version information.
Product Files Release Version on SP2
----------------------------------------------------------------
Visual Studio 6.0 Oleaut32.dll 2.30.4261 2.40.4268
Olepro32.dll 5.00.4261 5.00.4268
Asycfilt.dll 2.30.4261 2.40.4268
Stdole2.tlb 2.30.4261 2.40.4268
Visual Basic 6.0 Msvbvm60.dll 6.00.8176 6.00.8268
Visual C++ 6.0 Afxodlgs.h
Arccore.cpp
Ctlinplc.cpp
Dlgcore.cpp
Dlgprnt.cpp
Libcmt.lib
Libcmtd.lib
Libcmtd.pdb
Mfc42.dll 6.00.8168.0 6.00.8267.0
Mfc42.lib
Mfc42.map
Mfc42.pdb
Mfc42d.dll 6.00.8168.0 6.00.8267.0
Mfc42d.lib
Mfc42d.map
Mfc42d.pdb
Mfc42u.dll 6.00.8168.0 6.00.8267.0
Mfc42u.lib
Mfc42u.map
Mfc42u.pdb
Mfc42ud.dll 6.00.8168.0 6.00.8267.0
Mfc42ud.lib
Mfc42ud.map
Mfc42ud.pdb
Mfcd42d.dll 6.00.8168.0 6.00.8267.0
Mfcd42d.lib
Mfcd42d.map
Mfcd42d.pdb
Mfcd42ud.dll 6.00.8168.0 6.00.8267.0
Mfcd42ud.lib
Mfcd42ud.map
Mfcd42ud.pdb
Mfcn42d.dll 6.00.8168.0 6.00.8267.0
Mfcn42d.lib
Mfcn42d.map
Mfcn42d.pdb
Mfcn42ud.dll 6.00.8168.0 6.00.8267.0
Mfcn42ud.lib
Mfcn42ud.map
Mfcn42ud.pdb
Mfco42d.dll 6.00.8168.0 6.00.8267.0
Mfco42d.lib
Mfco42d.map
Mfco42d.pdb
Mfco42ud.dll 6.00.8168.0 6.00.8267.0
Mfco42ud.lib
Mfco42ud.map
Mfco42ud.pdb
Mfcs42.lib
Mfcs42.pdb
Mfcs42d.lib
Mfcs42d.pdb
Mfcs42u.lib
Mfcs42u.pdb
Mfcs42ud.lib
Mfcs42ud.pdb
Msvcrt.dll 6.00.8168.0 6.00.8337.0
Msvcrt.lib
Msvcrt.pdb
Msvcrtd.dll 6.00.8168.0 6.00.8337.0
Msvcrtd.lib
Msvcrtd.pdb
Nafxcw.lib
Nafxcw.pdb
Nafxcwd.lib
Nafxcwd.pdb
Oledlgs2.cpp
Strftime.c
Uafxcw.lib
Uafxcw.pdb
Uafxcwd.lib
Uafxcwd.pdb
Viewcore.cpp
Winfrm.cpp
Sbheap.c*
Malloc.c*
Free.c*
Expand.c*
Heapinit.c*
Delete.cpp*
New.cpp*
Realloc.c*
Calloc.c*
Heapmin.c*
Msize.c*
Heapchk.c*
Dbgheap.c*
Winheap.h*
Visual J++ 6.0 Msjavx86.exe 5.00.2922 5.00.3161
Classd.exe 5.00.2922 5.00.3161
Classr.exe 5.00.2922 5.00.3161
Msvj98.dll 6.00.8169 6.01.8349
Msvj98ui.dll 6.00.8167 6.01.8349
Jvc.exe 6.00.8167 6.00.8343
Applet on HTML.vjp
COM Control.vjp
Console Application.vjp
Uninstalling the Visual Studio 6.0 Service Pack
The service pack cannot be uninstalled independently of Visual Studio. To
uninstall service pack updates to a Visual Studio 6.0 tool, such as
Visual C++, you must uninstall the tool. The service pack updates will be
uninstalled with it. Then, reinstall the tools without the updates.
Notes on Fixes
Fixed Visual C++ Issues
The following Visual C++ issues have been fixed with Service Pack 2 and
were also fixed with Service Pack 1.
Microsoft Foundation Classes (MFC) Issues:
193099 FIX: CDialog::Create() ReturnsIncorrect Value Calling EndDialog
193272 FIX: MFC Doesn't CallCPrintDialog::OnInitDialog
193102 FIX: Assert in Appui1.cpp Line 215in MFC SDI/MDI Application
192942 FIX: Call to CWnd::MoveWindowcauses Stack Overflow
193100 FIX: CString Serialization CausesAccess Violation
CRT Issues:
193509 FIX: Exception When Callingstrftime() Function
The following issues have been addressed in Service Pack 2 but were not
addressed in Service Pack 1.
MSVCRT.DLL was modified to include the Visual C++ 5.0 heap in addition to
the Visual C++ 6.0 heap for better compatibility. Visual C++ 6.0
applications will continue to use the Visual C++ 6.0 heap and pre-Visual
C++ 6.0 applications will use the Visual C++ 5.0 heap.
CRT Issues:
Heap compatibility problems as described in the following two Knowledge
Base articles:
190536 PRB: Invalid Page Fault inMsvcrt.dll
194550 PRB: Freeing Memory Multiple TimesMay Cause an Access Violation
When installing Service Pack 2, several of the CRT heap management files
will be overwritten by updated files that include the code for both the
Visual C++ 6.0 heap and the Visual C++ 5.0 heap. If you need to rebuild
the Visual C++ 6.0 static libraries, the Visual C++ 5.0 heap code will be
included in your static library. It will not be used. The Visual C++ 5.0
heap was added to this release to support compatibility problems that can
arise due to the problems listed above. If you do not wish the Visual C++
5.0 code to be included in your rebuilt static library, you should rebuild
the library using the original code that was released with Visual C++
6.0.
The small block heap source files in the preceding Visual C++ 6.0 file list
are flagged with an asterisk. Please be aware that the source files listed
match the PDB files for the DLL version of the heap and do not correspond
to the static CRT libraries which were not updated in this service pack.
If you need to debug into the static CRT libraries, you need recopy the
original CRT source files from your product CD.
Fixed Visual Basic Issue
The following Visual Basic issue has been fixed with Service Pack 2 and was
also fixed with Service Pack 1.
- A run-time error can occur in compiled Visual Basic code when the
application uses more than eight in-process COM DLLs.
If your applications download run-time components from the Web on setup,
note that the following files have changed with this service pack:
- Msvbvm60.cabVbrun60.cabOleaut.cab
Fixed Automation Issues
The following run-time issue has been fixed with Service Pack 2 and was
also fixed with Service Pack 1:
- Passing in an unallocated array for an out-only SAFEARRAY parameter
to a late-bound method call will fail.
Updated Visual J++ Files
In response to the automation issues previously noted, the Microsoft
virtual machine files have been updated. This change will be applied both
on the computer where Visual J++ is installed, and also to the Visual J++
redistributable folder so that Visual J++ applications that are
distributed will also include the updated Automation files.
To install and use the updated versions of the core Microsoft VM class files, run
either Classd.exe or Classr.exe.
This service pack contains the required Visual J++ files needed to comply
with the preliminary ruling issued by Federal District Court Judge Ronald
H. Whyte. These changes were not included in Visual Studio 6.0 Service
Pack 1. For more information, please read \vj98\extwarn.txt in your Visual
Studio folder or go to http://msdn.microsoft.com/visualj
Finding More Information
For more in-depth information about the Visual Studio issues that are fixed
in this service pack, see the Microsoft Knowledge Base articles available
at:
http://support.microsoft.com/s
upport
To build a Visual Studio Service Pack query:
- Choose "Any Products" from the list.
- Set the search type to "Keywords."
- Enter one of the following as your search phrase:
kbvs600sp2
kbvs600sp2bug
kbvs600sp2fix
- Click "Find."
For the latest product information, please see the Visual Studio Web site
at: