Microsoft KB Archive/170366

From BetaArchive Wiki

Article ID: 170366

Article Last Modified on 2/18/2004


  • Microsoft Visual Studio 97 Service Pack 1

This article was previously published under Q170366


This is a copy of the Visual Studio 97 Service Pack 1 Readme (English language version).


The Microsoft Visual Studio 97 Service Pack 1

The Microsoft Visual Studio 97 Service Pack 1 upgrades the following Visual Studio applications:

  • Microsoft Visual Studio 97 (Professional and Enterprise Editions)
  • Microsoft Visual Basic, version 5.0 (Professional and Enterprise Editions)
  • Microsoft Visual C++, version 5.0 (Professional and Enterprise Editions)
  • Microsoft Visual InterDev
  • Microsoft Visual J++, version 1.1
  • Microsoft Visual SourceSafe, version 5.0

These Visual Studio applications should be shut down before installing the Visual Studio 97 Service Pack 1. Install the Visual Studio 97 Service Pack 1 whenever you have updated or changed any of the applications in Visual Studio to ensure that you have the latest fixes.

Installing the Microsoft Visual Studio 97 Service Pack 1

To install the Service Pack, insert the CD into your computer's CD-ROM drive. If you have downloaded and decompressed the Visual Studio 97 Service Pack 1 or if the Visual Studio 97 Service Pack 1 setup does not automatically launch, go to the root directory of the Visual Studio 97 Service Pack 1 and run setup. The setup.exe 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)

The Visual Studio 97 Service Pack 1 detects any installed Visual Studio applications and the specific languages those applications use. (Files are checked for language which is determined by the operating system settings and the individual file settings.) The Visual Studio 97 Service Pack 1 supports the following languages: English, French, German, Italian, Japanese, Korean, Simplified Chinese, Spanish, and Traditional Chinese.

During the installation, the Visual Studio 97 Service Pack 1 displays the files to be installed or updated based on the installed applications detected. After updating your installation of any of the Visual Studio applications, the Visual Studio 97 Service Pack 1 appends any actions to the VS97SP1.log file, which is stored in the root or temporary directory. If you run the Visual Studio 97 Service Pack 1 again, any additional file updates are appended to the end of the log file.

Notes on Fixes in the Visual Studio 97 Service Pack 1

Do Not Use the Microsoft Utility RegClean 4.1 with Visual Studio or Any Visual Studio Applications:

If you run RegClean 4.1 (build 97.71), you might find (if you have Visual C++ Enterprise or Visual Basic Enterprise installed) that the Database Designer no longer works or (if you have Visual InterDev installed) the Database Designer and LinkView tools no longer work. If you have run RegClean, then reinstall the Visual Studio applications as appropriate.

Active Server Pages (ASP) Browser Component Does Not Recognize the Browser:

If you are installing a new release of Internet Explorer or Netscape, the ASP browser component object may not work in Visual Studio. The string identifying the browser may not be present in the browsecap.ini file, which is located on the Web server. The solution is to either manually change the file or download a newer version of the file from the Internet Information Server (IIS) Web site.

The version of the browsecap.ini file that currently ships with the Visual InterDev server components does not recognize Internet Explorer 3.02 as a valid browser. This results in an error when running an .asp page using the browser component in Internet Explorer 3.02.

An updated version of the browsecap.ini file, as well as a 1.0b updated version of Active Server Pages, is available at:

Once there, click the "get IIS" button and choose "Other free software," then "Updates for IIS." Choose a new compressed or uncompressed browsecap.ini file to download.

A full download of Active Server Pages English 1.0b is available under "get iis" as well. The 1.0b English version provides full DBCS enabling and some fixes.

Updates to SQL Server and Visual Database Tools:

We recommend downloading SQL Server Service Pack 3 if you are working with Visual Database Tools and/or Visual InterDev.

The SQL Server Service Pack 3 is available at:

SQL Server Service Pack 3 fixes several issues with the relational engine of Visual Database Tools including:

  • A query with two or more RIGHT/LEFT OUTER JOIN clauses resulted in a syntax error. Now they parse correctly and generate the correct result.
  • Some "complex" queries and views with five or more tables would stop the server. This resulted in a TDS Protocol error and a subsequent stop of Visual Studio. This issue has been corrected.

Visual Database Tools/Visual InterDev still requires, as a minimum, SQL Server Service Pack 1, but installing SQL Server Service Pack 3 is recommended.

Internet Explorer Security Options and InfoViewer:

InfoViewer, the integrated online documentation viewer included with MSDN and Visual Studio, relies on the Internet Explorer security settings for active content. The online documentation included with MSDN and Visual Studio includes some active content. If you set your Internet Explorer security's maximum security options while browsing the World Wide Web, some types of hyperlinks in your online documentation will not work.

Allowing Internet Explorer to download an ActiveX control and then automatically executing the downloaded code is a legitimate security concern. However, you can protect against this problem and still use the online documentation included with MSDN and Visual Studio. To do so, complete the following steps:

  1. On the View menu in Internet Explorer, click Options.
  2. Click Security.
  3. Make the following changes under "Active Content":
    1. Deselect the "Allow downloading of active content" check box. (This option ensures that no unknown active content will be downloaded from a World Wide Web site.)
    2. Select the "Enable ActiveX controls and plug-ins" check box. (This option enables you to use local ActiveX controls, such as those supplied with MSDN and InfoViewer.)
    3. Select the "Run ActiveX scripts" check box. (This option allows you to use local ActiveX scripts.)
  4. Click OK.
  5. Restart Visual Studio.

Special Instructions for Visual C++ for Windows CE:

Visual C++ for Windows CE customers may experience problems with the Visual Studio family of products. Visual C++ for Windows CE is not currently supported with the Visual Studio Service Pack. If you want to install any part of the Visual Studio 97 Service Pack 1, please uninstall Visual C++ for Windows CE first. If you encounter any problems using Visual C++ for Windows CE with Visual Studio, please call Visual C++ for Windows CE product support.

Updating Visual C++ .map Files:

Visual Studio 97 Service Pack 1 updates the following .map files if you installed them in your system or system32 directory with Visual C++ 5.0. If you installed these .map files to a different location, used some derivative of these files, or used the .map files directly from the Visual C++ 5.0 CD, you will need to update these files manually or reference them directly from the Visual Studio 97 Service Pack 1 CD. You can find the Visual Studio 97 Service Pack 1 updates to these files in the \all\vc\debug directory on the Visual Studio Service 97 Pack 1 CD.

Finding More Information on Issues Resolved with the Visual Studio 97 Service Pack 1

The Microsoft Knowledge Base contains articles that provide more in-depth information about the issues with Visual Studio that are fixed in the Visual Studio 97 Service Pack 1. To locate these articles, go to and then follow the instructions below to build a query.

To build a Visual Studio 97 Service Pack 1 query:

  1. Choose a product. (In this case, click "Any Products.")
  2. Set the number of items returned per page (from the default of 25) to 100.
  3. Specify the type of search. This should be set to "Search the article text."
  4. Enter the following as your search phrase:

  5. Click "Begin Search."

If there are too many items, try these searches:

  • VS97FixlistSP1 and visualc (this gets only the Microsoft Visual C++ articles).
  • VS97FixlistSP1 and not visualc (this gets everything except the Visual C++ articles).

To refine the query, see the guide to queries on:

Visual Studio Microsoft Knowledge Base Articles

Q168264   Copying Samples to a Dir with High ASCII Stops File I/O
Q168265   Error Microsoft Jscript error After Copying Sample

Visual Basic 5.0 Microsoft Knowledge Base Articles:

The fixes shown below address the problems in dbgrid32.ocx, msrdc20.ocx, and msrdo20.dll related to data-binding and other issues. Also included are fixes for the incompatibility problems with comctl32.ocx. There is also an update to the Visual Basic 5 Setup Kit and some of the .cab files for the ActiveX component download. These .cab files are not installed by the Visual Studio 97 Service Pack 1 but are included on the Visual Studio 97 Service Pack 1 CD.

Q168163   Memory Leak When Calling UserConnection Query Event
Q167951   AUTMGR32.EXE Fails After Component Download
Q168153   DBGrid Bound to RDC Displays a Single Row After MoveLast
Q168160   Error on Update After AddNew With RDC and Bound Controls
Q168156   DBGrid Bound to RDC Displays Small ResultSets Incorrectly
Q168161   Distributed Transaction Fails On Subsequent Runs
Q168157   Problems Binding Multiple Controls to RDC 2.0
Q167950   DAO Internet Component Download Fails to Install
Q168159   DBCombo Updates Incorrectly When Using RDC Bound ListSource
Q168162   RDO Move 0 Fails to Refresh Record

Q167948   Internet Component Download Fails After Using Setup Toolkit
Q168158   Can't Close Resultset if DBGrid Bound to RDC
Q168155   Crash when Resizing Column of Split DBGrid
Q167122   FindItem Method of ListView Incorrectly Returns an Error
Q167123   COMCTL32.OCX Is Binary Incompatible with Previous Version
Q167947   ODBC CAB File Does Not Install 16-bit ODBC Files

Visual Database Tools Microsoft Knowledge Base Articles:

Q168295   Updating Single Row Replaces Data in All Rows of a Cursor

Visual SourceSafe Microsoft Knowledge Base Articles:

Q167274   Analyze May Hang or Crash When Running on Large Databases
Q167273   VSS Editor/Viewer Removing or Replacing Characters
Q165776   Admin Cannot See Files With Project Security Enabled
Q167737   Deploy to a Unix Server Via FTP Fails
Q166469   Multiple Check In Fails with Keyword Expansion

Visual J++ Microsoft Knowledge Base Articles:

Q167719   JavaTLB gives an Internal Compiler Error with VBCCE Control
Q167720   Saving Java File on Multi-Processor Machine Crashes MSDEV
Q167828   Cannot Access the ClassView Information File Error
Q167998   Cannot Debug Visual J++ Programs On IE 4.0 Pre-Release

Visual InterDev Microsoft Knowledge Base Articles:

Q168296   GPF When Expanding Links in Japanese Version of VI
Q168297   Data Connection Icons Not Displayed for global.asa
Q168269   MSWC BrowserType Control Does Not Recognize IE 3.02
Q165834   Can't Set Permissions Back to Root Web Permissions
Q168270   Update Error When Updating Sybase Table From ASP
Q168271   Sybase Cursor Can't Scroll Back in DF Wizard Created Form
Q168272   GPF When Refreshing a Project Containing Sybase Connection

Q168273   Invalid Operation When Deleting the End Sybase Record
Q168274   GPF When Selecting .ALX Files in Template Wizard
Q168275   Corrupted Dialog Titles in Japanese Version
Q167846   Reserved Error When Running DataForm Wizard Against Access
Q167267   New Devisws.pkg for 0-Byte File Save Problem

Q166674   Reserved Error When Entering Certain Valid SQL Statements
Q167836   DataForm Wizard Not Sizing Column Width Properly For DBCS

Visual C++ Microsoft Knowledge Base Articles:

Q168007   Remote Debugging Very Slow in Visual C++ Version 5.0
Q166285   MSDEV Crashes When Converting VC++ 4.0 Projects
Q165792   MSDEV.EXE Application Error When Building an Application
Q167994   Cvpack INTERNAL ERROR When Linking Large Projects
Q167423   CRecordset Members Not in Add Member Variable Dialog Box
Q167845   Class Wizard Deletes Source Files

The fixes for the Active Template Library (ATL) shown below address the most commonly reported issues: MBCS compatibility, container compatibility issues, and internal coding errors in ATL.

Q167526   ATL Control May Cause An Access Violation
Q167949   OnWindowMessage Returns BOOL for HRESULT
Q167340   ATL Control Causes Access Violation in Visual Basic 5.0

The fixes for the compiler shown below address the most commonly reported COM issues. These issues include: support for Visual Basic-created controls, internal coding issues in the COM headers, and problems related to smart pointers and reference counting. Additionally, there are fixes for templates that contain improper propagation of the "const" qualifier, and fixes for a problem of forcing instantiation of all template member functions regardless of whether they were actually used. There were also reported problems with either floating-point optimizations, the global optimizer (/Og) or both. All these reported issues have been addressed in the Visual Studio 97 Service Pack 1.

Q151491   copy() Member of bstrt in COMUTL.H Doesn't Copy
Q166721   C2784 On < Operator When Instantiating an ATL Container
Q168079   _com_ptr_t::operator=(const _variant_t&) AddRef's Twice
Q168003   Function Prototypes in comutil.h Missing Calling Convention
Q168111   #import Does Not Compensate for Gaps in vtable

Q168009   Smartptr Property in Interface Causes C2512 Error
Q168010   /Od May Generate Destructor for Unconstructed Temp Object
Q168028   C2955: Caused By the "using" Declaration
Q168029   Global Optimizations (/Og) May Cause the Compiler to Hang
Q167996   /Og Causes Invalid Double Result Returned from Function

Q168011   C1001, file 'fppeeps.c', line 394, Caused By /Og
Q151499   Compiler Performs Illegal Sign Conversion Optimization
Q167967   /Og Increments the Index of a Loop Too Soon.
Q168012   Incorrect Code Generated When Using Floating-Point and /Og
Q151500   /Og Causes vfptr Initialization Problems

Q167995   Calling a Function Returning double May Not pop FPU Stack
Q168008   C2166: Incorrect Type Deduction for Template Parameter

Listed below are the Linker fixes that correct a reported problem that ICF (Identical COMDAT Folding) was causing severe build time losses. The fixes also remove size limits that were imposed on the size of an executable and raise the maximum size of the ILK file used by the linker to 64 MB.

Q151501   Linking Large Projects Can Be Very Slow

The fixes for the Microsoft Foundation Classes (MFC) listed below deal with the most commonly reported issues that prevented binary compatibility with MFC 4.2 (shipped with Visual C++ 4.2). These issues included unintended dependencies on the latest comctl32.dll, the 3.0 version of odbc32.dll, threading issues and internal coding errors in MFC.

Q167693   MFC Application Hangs on Multiprocessor Machine
Q167692   Assertion Line 257 in File DlgProp.cpp
Q167650   Problems with ToolTips on Windows 95
Q167731   Access Violation When Connecting in MFC ODBC Application
Q168004   Unable to Initialize DAO/Jet db Engine Error
Q167423   CRecordset Members Not in "Add Member Variable Dialog Box


For additional information, please see the following articles in the Microsoft Knowledge Base:

170365 INFO: Visual Studio 97 Service Pack 1 - What, Where, and Why

170367 HOWTO: Determine VS97 Service Pack Updates in a Product

Additional query words: kbVBp500 kbVBp kbWinCE100 wince kvVS97sp1 kbVS97sp2 kbVS97SP3 kbreadme

Keywords: kbinfo kbfix kbvs97sp1fix kbvs97sp2fix kbreadme KB170366