Support Statement for Visual Basic 6.0 on Windows Vista, Windows Server 2008, Windows 7, and Windows 8
Update: November 2012
The Visual Basic team is committed to “It Just Works” compatibility for Visual Basic 6.0 applications on Windows Vista, Windows Server 2008 including R2, Windows 7, and Windows 8.
Visual Basic 6.0 is made up of these key deliverables:
Visual Basic 6.0 IDE [Integrated Development Environment]
Visual Basic 6.0 Runtime -- the base libraries and execution engine used to run VB 6.0 applications
Visual Basic 6.0 Runtime Extended Files – select ActiveX control OCX files, libraries, and tools shipping with the IDE media and as an online release
The Visual Basic 6.0 IDE
The Visual Basic 6.0 IDE is no longer supported as of April 8, 2008. However, Custom Support Agreements may be available from Microsoft. Additionally, both the Windows and Visual Basic teams have tested Visual Basic 6.0 IDE on Windows Vista, Windows 7, Windows Server 2008, and Windows 8 to understand and mitigate (if appropriate) serious regressions in application compatibility. This announcement does not change the support policy for the IDE.
The Visual Basic 6.0 Runtime
The Visual Basic 6.0 runtime is defined as the compiled binary files originally included in the redistribution list for Visual Basic 6.0. These files were marked as distributable in the original Visual Basic 6.0 license. Examples of these files include the Visual Basic 6.0 runtime library (msvbvm60.dll), controls (i.e. msflxgrd.ocx) along with runtime support files for other major functional areas (i.e. MDAC).
The runtime is divided into the three groups:
Supported Runtime Files – Shipping in the OS: Key Visual Basic 6.0 runtime files, used in the majority of application scenarios, are shipping in and supported for the lifetime of Windows Vista, Windows Server 2008, Windows 7, or Windows 8. This lifetime is five years of mainstream support and five years of extended support from the time that a given version of Windows ships. These files have been tested for compatibility as part of our testing of Visual Basic 6.0 applications running on Windows Vista. Note: the list of files shipping in Windows Vista, Windows Server 2008, Windows 7, Windows 8, and Windows XP are nearly identical and redist requirements for applications should be nearly identical. One key difference is TriEdit.dll was removed from Windows Vista and later versions.
Supported Runtime Files – Extended Files to Distribute with your application: extended list of key controls, libraries, and tools that are installed from the IDE media or from Microsoft.com to the developer machine. Typically the VB6 IDE installed these controls to the developer machine by default. The developer still needs to redistribute these files with the application. The supported version of the files is available online on the Microsoft Download Center ( http://go.microsoft.com/fwlink/?LinkID=142927).
Unsupported Runtime Files: Some files have either fallen out of mainstream support or they were never included as a part of the runtime redist (e.g. they were included in \Tools folder on the IDE media to support legacy VB4/VB5 applications or they were 3rd party controls). These files are not supported on Windows; instead they are subject to whatever support agreement applies to the media they were shipped with. These files have been tested to work on Vista as part of our application compatibility and testing process, but this implies no warranties around support and servicing. In some instances, later versions of these libraries are supported. Details on backward compatibility or migration to supported versions are provided below.
The Visual Basic 6.0 runtime has been tested for compatibility between Windows XP and Windows Vista / Windows Server 2008/Windows 7/Windows 8 with a goal that applications work similarly on these operating systems. As with any release of the operating system, there may be differences in functionality that will require modifications to your applications. These differences will be addressed on a case-by-case basis via normal support channels.
For specific details on the files included in each support group see the “Runtime Definition” section below.
Visual Basic 6.0 Support Lifetime
Supporting and/or shipping Visual Basic 6.0 runtime binaries on Windows Vista/Windows Server 2008/Windows 7/Windows 8 does not change the support policy for the Visual Basic 6.0 IDE or Visual Studio 6.0 IDE as a whole. Those products will move out of extended support in April 8, 2008.
Further details on the support policy for the Visual Basic 6.0 and Visual Studio 6.0 products can be found at http://msdn.microsoft.com/en-us/vstudio/aa718686.aspx. Details on the support lifecycle of Microsoft products can be found at http://support.microsoft.com/gp/lifepolicy. As a part of this support lifecycle, Microsoft will continue to support the Visual Basic 6.0 runtime on Windows NT 4.0, Windows 2000, Windows XP and Windows Server 2003 for the support lifetime of those operating systems. This means, for example, that the Visual Basic 6.0 runtime will be supported on Windows Server 2003 until June, 2008 for Mainstream Support and June, 2013 for Extended Support.
For more details on the support lifecycle or to find out about additional support options, please visit our support page at http://www.microsoft.com/support
Visual Basic 6.0 runtime files are 32-bit. These files ship in 64-bit Windows Operating Systems referenced in the table below. 32-bit VB6 applications and components are supported in the WOW emulation environment only. 32-bit components must also be hosted in 32-bit application processes.
The Visual Basic 6.0 IDE has never been offered in a native 64-bit version, nor has the 32-bit IDE been supported on 64-bit Windows. VB6 development on 64-bit Windows or any native architecture other than 32-bit is not and will not be supported.
Since the initial release of this support statement, the Windows 7 operating system has been announced. This document has been updated to clarify Microsoft’s support for VB6 on Windows 7.
VB6 runtime will ship and will be supported in Windows 7 for the lifetime of the OS. Visual Basic 6.0 runtime files continue to be 32-bit only and all components must be hosted in 32-bit application processes. Developers can think of the support story for Windows 7 being the same as it is for Windows Vista.
Since the initial release of this support statement, the Windows 8 operating system has been announced. This document has been updated to clarify Microsoft’s support for VB6 on Windows 8.
VB6 runtime will ship and will be supported in Windows 8 for the lifetime of the OS. Visual Basic 6.0 runtime files continue to be 32-bit only and all components must be hosted in 32-bit application processes. Developers can think of the support story for Windows 8 being the same as it is for Windows 7.
Supported Windows Operating System Versions
This section provides additional information regarding the operating systems that offer some level of support for VB6.
* VB6 runtime support is limited by the OS support lifecycle. E.g. if the target OS is in Extended support, VB6 cannot have a higher level of support than Extended support.
Visual Basic 6.0 Runtime Usage Inside VBA and Office
Visual Basic for Applications, or VBA, is a distinct technology commonly used for application automation and macros inside of other applications, most commonly inside Microsoft Office applications. VBA ships as a part of Office and therefore the support for VBA is governed by the support policy of Office. However, there are situations where VBA is used to call or host Visual Basic 6.0 runtime binaries and controls. In these situations, Visual Basic 6.0 supported runtime files in the OS and the extended file list are also supported when used inside of a supported VBA environment.
For VB6 runtime scenarios to be supported inside VBA, all of the following must be true:
The host OS version for VB runtime is still supported
The host version of Office for VBA is still supported
The runtime files in question are still supported
Visual Basic Script (VBScript)
VBScript is unrelated to Visual Basic 6.0 and this support statement. However, VBScript is currently shipping as a part Windows Vista, Windows Server 2008 and Windows 7 and is governed by the OS support lifecycle.
Third Party Components
Microsoft is unable to provide support for third party components, such as OCX/ActiveX controls. Customers are encouraged to contact the original control vendor for details on support for those components.
Reporting Issues with VB 6.0 Application Running on Windows Vista,
Windows 7 and Windows 8
Developers planning to use Visual Basic 6.0 with Windows Vista should install Windows Vista and begin application compatibility testing using original application acceptance testing.
If you find an issue with your Visual Basic 6.0 application running on Windows Vista,Windows 7, Windows 8 (where the same code worked as expected on Windows XP), please follow your normal support channels to report the issue.
Supported and Shipping in Windows Vista, Windows Server 2008, Windows 7, and Windows 8
Supported Runtime Files to Distribute with Your Application
Unsupported, But Supported and Compatible Updates or Upgrades are Available
Unsupported Runtime Files
Localization Support Binaries
The following binaries are necessary for supporting Visual Basic 6.0 applications running on localized versions of the Windows operating system. They are supported but are not shipped in Windows. These files are required to be shipped with your application setup.
Supported Runtime Files to Distribute with Your Application