Microsoft Y2K  
Microsoft
 This static CD-based web site is representative of the www.microsoft.com/y2k site as of October 15, 1999.

Microsoft Year 2000 Readiness Disclosure & Resource Center
OLE Automation Technology  (All Languages) - 32-Bit Win

Product Summary
Product: OLE Automation Technology
Version:
Category: Compliant
Operating System: 32-Bit Win
Language: All Languages Release Date: N/A
Operational Range: -
Prerequisites: None
Product Dependencies: Products using OLE Automation technology including Office 95, Office 97, Visual Basic for Applications, Visual Basic
Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
Last Updated: 14 Sep 1999
Product Details

The Automation Libraries and the Year 2000

In efforts to improve code efficiency and lower the total cost of ownership for our products, Microsoft has recommended to internal developers to use a common Automation Library for handling dates. Over the years, the library has been updated to reflect changing customer needs and add additional functionality. Updated versions of the library are installed with major product releases such as Microsoft Office, Microsoft Visual Studio and Microsoft Internet Explorer.

How do I know if I have the automation library?

If you're running Windows 95 or Windows NT 3.51 or later, then you use the automation library.

What makes up the automation library?

Four files make up the automation library. These files are:

  • oleaut32.dll
  • olepro32.dll
  • asycfilt.dll
  • stdole2.tlb

These files are installed either by the operating system or an application.

How does the automation library affect year 2000 issues?

The automation library contains routines for interpreting 2-digit years and provides a convenient way for applications to create unambiguous (serial) dates. So, many of your applications probably use the automation libraries for date handling.

Over the years the automation libraries have been revised with regards to their date formatting behavior:

 

Library (OLEAUT32.DLL) Version

Two Digit Year Window for String to Date Conversion

Two Digit Year Window for Date to String Conversion

Starting with Version 2.20.4049

1930 û 2029

1930 û 1999

Starting with Version 2.30.4257

1930 - 2029

1930 û 2029

The cutoff above refers to how dates with 2-digit years are evaluated when the Automation Libraries are asked to covert them into an absolute date. From 2.20.4049 and onward, any 2-digit year that is entered is assumed to lie between 1930 and 2029. The user on those operating systems, starting with version 2.30.4257, can change the date window where the control panel allows it.

When the Automation Libraries output a date as a string, the string is also formatted differently depending on which version of the Automation Libraries is being used. Starting with 2.20.4049, dates before 1930 or after the year 2000 will have the year field output as a 4-digit date, even if 2-digit display is the preferred mode in the operating systemÆs control panel. Starting with 2.30.4257 dates from 1930 to 2029 are output with 2-digit years (if that is the preferred format in the control panel).

Here are some examples, where quotes represent input to and output from the Automation Libraries:

Starting with Version 2.20.4049:

"1/1/30" is interpreted as January 1st, 1930, and January 1st, 1930 is output as "1/1/30".

"1/1/29" is interpreted as January 1st, 2029, and January 1st, 2029 is output as "1/1/2029"

"1/1/00" is interpreted as January 1st, 2000, and January 1st, 2000 is output as "1/1/2000"

"1/1/99" is interpreted as January 1st, 1999, and January 1st, 1999 is output as "1/1/99"

Starting with Version 2.30.4257:

"1/1/30" is interpreted as January 1st, 1930, and January 1st, 1930 is output as "1/1/30".

"1/1/29" is interpreted as January 1st, 2029, and January 1st, 2029 is output as "1/1/29"

"1/1/00" is interpreted as January 1st, 2000, and January 1st, 2000 is output as "1/1/00"

"1/1/99" is interpreted as January 1st, 1999, and January 1st, 1999 is output as "1/1/99"

 

How do I know what version of the automation libraries my computer has?

Click the Start button, select the Find menu item, and click on "Files or Folders..." In the "Name & Location" tab, type (without quotes) "oleaut32.dll" in the field titled "Named." Select the drive in the "Look in" field that your operating system lives on (usually (C:) ). Click "Find Now." When the file shows up in the box below, right click on the file and select "Properties." Click the right hand tab that says "Version."

Name some applications that use automation libraries

Microsoft Office 95 and later

Microsoft Visual Studio (including Visual C++, Visual Basic, Visual Interdev and custom applications)

Microsoft Windows 95, Windows 98, Windows NT Workstation, Windows NT Server

Microsoft Internet Explorer

What are the implications for the organization with multiple versions of the automation libraries?

There are a few year 2000 issues that could result from different users having different versions of the automation libraries. These all involve the interpretation of years entered with only two digits. If your software applications and users enter four digit years, there are no problems. If your users or software are entering 2-digit years, then a scenario where different machines are entering years in different centuries is possible. For example, a data entry department could be running a custom application on both Windows NT 3.51 (without service packs) and on Windows NT 4.0 Workstation. If the users are entering dates like 1/1/10, the NT 3.51 machines could record the date as January 1, 1910 while the NT 4.0 machines may record January 1, 2010. By installing the latest service packs or newer applications (like Microsoft Office 97 or Internet Explorer 4.0), you can assure that your systems have more consistent date handling.

For Windows 95 and Windows 98 year 2000 information and updates, see

http://computingcentral.msn.com/guide/year2000/msy2k/productinfo/windows.asp

For Windows NT year 2000 information and updates, see

http://www.microsoft.com/technet/year2k/product/product.asp

Return to Search Screen

Legend of Symbols:
* The product is compliant with recommended customer action. This indicates a prerequisite action is recommended which may include loading a software update or reading a document.
# The product is compliant with an acceptable deviations from Microsoft's standard of compliance. An acceptable deviation does not affect the core functionality, data integrity, stability, or reliability of the product.
+ The product is compliant with pending Year 2000 software updates. Future maintenance actions will be recommended shortly. See Product Guide for further details.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.

If after reviewing this information you have additional questions related to this product, click here.

 

YEAR 2000 READINESS DISCLOSURE

ALL COMMUNICATIONS OR CONVEYANCES OF INFORMATION TO YOU CONCERNING MICROSOFT AND THE YEAR 2000, INCLUDING BUT NOT LIMITED TO THIS DOCUMENT OR ANY OTHER PAST, PRESENT OR FUTURE INFORMATION REGARDING YEAR 2000 TESTING, ASSESSMENTS, READINESS, TIME TABLES, OBJECTIVES, OR OTHER (COLLECTIVELY THE "MICROSOFT YEAR 2000 STATEMENT"), ARE PROVIDED AS A "YEAR 2000 READINESS DISCLOSURE" (AS DEFINED BY THE YEAR 2000 INFORMATION AND READINESS DISCLOSURE ACT) AND CAN BE FOUND AT MICROSOFT'S YEAR 2000 WEBSITE LOCATED AT http://www.microsoft.com/year2000/ (the "Y2K WEBSITE"). EACH MICROSOFT YEAR 2000 STATEMENT IS PROVIDED PURSUANT TO THE TERMS HEREOF, THE TERMS OF THE Y2K WEBSITE, AND THE YEAR 2000 INFORMATION AND READINESS DISCLOSURE ACT FOR THE SOLE PURPOSE OF ASSISTING THE PLANNING FOR THE TRANSITION TO THE YEAR 2000. EACH MICROSOFT YEAR 2000 STATEMENT CONTAINS INFORMATION CURRENTLY AVAILABLE AND IS UPDATED REGULARLY AND SUBJECT TO CHANGE. MICROSOFT THEREFORE RECOMMENDS THAT YOU CHECK THE Y2K WEBSITE REGULARLY FOR ANY CHANGES TO ANY MICROSOFT YEAR 2000 STATEMENT. EACH MICROSOFT YEAR 2000 STATEMENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. CONSEQUENTLY, MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. MOREOVER, MICROSOFT DOES NOT WARRANT OR MAKE ANY REPRESENTATIONS REGARDING THE USE OR THE RESULTS OF THE USE OF ANY MICROSOFT YEAR 2000 STATEMENT IN TERMS OF ITS CORRECTNESS, ACCURACY, RELIABILITY, OR OTHERWISE. NO ORAL OR WRITTEN INFORMATION OR ADVICE GIVEN BY MICROSOFT OR ITS AUTHORIZED REPRESENTATIVES SHALL CREATE A WARRANTY OR IN ANY WAY DECREASE THE SCOPE OF THIS WARRANTY DISCLAIMER. IN NO EVENT SHALL MICROSOFT OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER REGARDING ANY MICROSOFT YEAR 2000 STATEMENT INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS, PUNITIVE OR SPECIAL DAMAGES, EVEN IF MICROSOFT OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES, SO THE FOREGOING LIMITATION MAY NOT APPLY TO YOU. THE INFORMATION CONTAINED IN EACH MICROSOFT YEAR 2000 STATEMENT IS FOUND AT THE Y2K WEBSITE AND IS INTENDED TO BE READ IN CONJUNCTION WITH OTHER INFORMATION LOCATED AT THE Y2K WEBSITE, INCLUDING BUT NOT LIMITED TO MICROSOFT'S YEAR 2000 COMPLIANCE STATEMENT, THE DESCRIPTION OF THE CATEGORIES OF COMPLIANCE INTO WHICH MICROSOFT HAS CLASSIFIED ITS PRODUCTS IN ITS YEAR 2000 PRODUCT GUIDE, AND THE MICROSOFT YEAR 2000 TEST CRITERIA.

ANY MICROSOFT YEAR 2000 STATEMENTS MADE TO YOU IN THE COURSE OF PROVIDING YEAR 2000 RELATED UPDATES, YEAR 2000 DIAGNOSTIC TOOLS, OR REMEDIATION SERVICES (IF ANY) ARE SUBJECT TO THE YEAR 2000 INFORMATION AND READINESS DISCLOSURE ACT (112 STAT. 2386). IN CASE OF A DISPUTE, THIS ACT MAY REDUCE YOUR LEGAL RIGHTS REGARDING THE USE OF ANY SUCH STATEMENTS, UNLESS OTHERWISE SPECIFIED BY YOUR CONTRACT OR TARIFF.


 

Wednesday, September 15, 1999
1999 Microsoft Corporation. All rights reserved. Terms of use.

This site is being designated as a Year 2000 Readiness Disclosure and the information contained herein is provided pursuant to the terms hereof and the Year 2000 Information and Readiness Disclosure Act.