PRB: Setup - 64K Register Key Limitation Under Windows 95 (201546)
The information in this article applies to:
- Microsoft Visual Studio, Enterprise Edition 6.0
- Microsoft Visual SourceSafe for Windows 6.0
- Microsoft Visual J++ 6.0
- Microsoft Visual InterDev 6.0
- Microsoft Visual FoxPro for Windows 6.0
- Microsoft Visual C++, 32-bit Professional Edition 6.0
- Microsoft Visual Basic Learning Edition for Windows 6.0
- Microsoft Visual Basic Professional Edition for Windows 6.0
- Microsoft Visual Basic Enterprise Edition for Windows 6.0
This article was previously published under Q201546 SYMPTOMS
When you install Visual Studio 6.0 or any of the Visual Studio 6.0 stand-alone products, you might receive the following warning:
Setup has detected that your system may not have enough registry database space available for a full installation. It is recommended that you read the Readme topic 'Windows 95 Registry Size' in Install.htm before continuing.
This warning appears before the first wizard screen appears.
If you receive this warning and you ignore it, you might experience unpredictable behavior during Setup and when you run the products you installed.
Near the end of Setup, several DLLs are registered using REGSVR32. You might see errors like the following:
Cannot load XXX.DLL
The text of this error does not indicate what the effect of this error is or why the DLL could not be loaded.
CAUSE
There is a known 64K limitation on the size of registry keys in Windows 95.
RESOLUTION
In the Install.htm readme file included with the products listed at the beginning of this article, there is an entry that addresses this issue. Please see the following section of the Install.htm:
Windows 95 Registry Size: 64 KB Limitation May Cause A Warning During Visual Studio Installation
In addtion, the MORE INFORMATION section of this article contains information that is not available in the Install.htm readme file. In particular, it describes a tool to help you clean the SharedDLLs registry key and also describes platform limitations and product sizes. IMPORTANT: If you are not absolutely certain of the requirements you need, it is safest to install only if you do not receive the initial 64k Warning during Setup.
STATUS
This behavior is by design.
MORE INFORMATION
The main area of contention is the following registry key:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\SharedDlls
When you install Visual Studio 6.0, the Setup program checks to make sure that there is enough room in the registry to install all of Visual Studio (that is, Visual C++, Visual Basic, Visual InterDev, Visual J++, Visual FoxPro, and Visual SourceSafe). It is not possible to check for registry usage after you have made your selections. As a result, Setup often overestimates by checking for the maximum possible space required. For example, Visual Studio setup checks to see if you have 29000 bytes available.
Below is a list of the space requirements for each of the Visual Studio components. Note that there is some overlap between components. There is no formula to tell you what is required to install two or three components.
Note that even though the Professional and Learning editions typically take up less space than Enterprise editions, the required size does not differ between editions. |
Microsoft Visual Studio 6.0 | 29000 | Microsoft Visual Basic 6.0 | 8900 | Microsoft Visual C++ 6.0 | 18900 | Microsoft Visual J++ 6.0 | 12100 | Microsoft Visual InterDev 6.0 | 11210 | Microsoft Visual FoxPro 6.0 | 3210 | Microsoft Visual SourceSafe 6.0 | 200 |
SharedDlls Registry Space Tool
ShareDLL.exe is a self-extracting executable that contains ShrDLL.exe. This tool can tell you how much space is in use and can also clean up some spurious entries that take up space in the SharedDLLs registry key. NOTE: This tool has not been formally tested. Microsoft does not support Shrdll.exe. For additional information about how to obtain and use ShrDLL, click the article number below
to view the article in the Microsoft Knowledge Base:
217165 Check the size of the SharedDLLs registry key using ShrDLL.exe
Registry and the Platform
Depending on the platform, checks are performed at the beginning of Setup to ensure that the registry does not overflow. There are two aspects of the registry that can affect Setup in this regard:
- The total space available for entering new keys and values. If there is not enough space available, Setup might need to increase the registry size.
- The size of individual registry keys.
See the following for a short comparison of registry support from the different platforms: Microsoft Windows 2000
There are no known issues.
Microsoft Windows NT 4.0
There is no limitation on the size of individual registry keys, but Windows NT 4.0 cannot dynamically increase the overall size of the registry. If the registry needs to increase, a warning appears and you have to restart your computer.
Microsoft Windows 98
There are no known issues. There is no 64K registry key limitation and Windows 98 does not require you to restart to increase the size of the registry.
Microsoft Windows 95
No individual registry key can be larger than 64K. Windows 95 can dynamically increase the registry without restarting.
Modification Type: | Minor | Last Reviewed: | 8/12/2005 |
---|
Keywords: | kbprb kbsetup KB201546 |
---|
|