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
Windows CE for Handheld PCs 3.0  (German) - Win CE

Product Summary
Product: Windows CE for Handheld PCs
Version: 3.0
Category: Compliant#
Operating System: Win CE
Language: German Release Date: 29 Oct 1998
Operational Range: -
Prerequisites: None
Product Dependencies: None
Clock Dependencies: Operating system clock and OLEAUT32
Last Updated: 06 Oct 1999
Product Details

This information applies to Windows CE for Handheld PC Professional Edition 3.0.

Operational Range for Data: OEM dependent for Operating System.

How the product handles dates:

Windows CE Operating System:

  • Storage: Windows CE for the Handheld PC stores a compressed year in the OEM Adaptation Layer, (OAL) which is controlled by an OEM. The date range is therefore hardware specific and is determined by the OEM. OEMs receive sample drivers from Microsoft that contain the default date range (1970-2069). This date range is only for the real-time clock and does not effect date ranges for Windows CE applications. Windows CE for the Handheld PC takes and returns a 4-digit year except in the OAL layer that talks directly to the hardware. External interfaces for the operating system support 4-digit years.

Pocket Excel:

  • Storage: The supported date range is 1/1/1900 through 12/31/9999.
  • Parsing on date entry: If a user enters a date in a "M/D/YY" format, less than 30 is 20XX, and equal to or greater than 30 is 19XX.
  • String date parsing during calculations: If a formula takes a string date as an argument, the string date is currently parsed using the same code as the date entry shown above. If converting an Excel 95 worksheet to the device using Windows CE Services 2.x, a formula such as =YEAR ("1/1/25") that returned 1925, will now return 2025 in Pocket Excel on the device. Note that this only occurs when "1/1/25" is a string using a 2-digit year format

Pocket Word:

  • Storage: Date and time values for date usage in Pocket Word are stored as simple text strings.

Pocket PowerPoint:

  • Storage: Date and time values for date usage in Pocket PowerPoint are stored as simple text strings

Pocket Access

  • Storage: The supported date range is 1/1/1601 through 12/31/9999.

Dates are stored internally as Win32 FILETIME structures.

  • Parsing on date entry. Dates are parsed using OLE Automation.
  • How OLE Automation Technology handles dates: When a string containing a date is converted into a date type, the conversion initially uses the rules specified in the control panel regional setting for short dates. This is very important since different locales have widely different date formats. If this fails, OLE-Automation logic attempts to make sense of the date that has been entered. The assumption made throughout this process is that the user has entered a valid date and therefore OLE-Automation will attempt to interpret it.
  • Two-digit shortcut handling: Pocket Access interprets dates entered with a

2-digit shortcut in the following way.

1/1/00 through 12/31/29 are interpreted as 1/1/2000 through 12/31/2029
1/1/30 through 12/31/99 are interpreted as 1/1/1930 through 12/31/1999

Inbox:

  • Storage: Dates are stored internally as Win32 FILETIME structures. The system clock is used for current date and time data.
  • Formatting. Dates are displayed in 2-digit and 4-digit formats, using the short and long date formats specified in the Regional Settings applet in Control Panel. Date entry fields parse and accept inputs that follow the formats specified in the Regional Settings applet.
  • Date Display: Dates are displayed in listview and readview, but not in sendview.
  • SMTP/POP3 Transport: The POP3 transport translates 2-digit and 4-digit year dates on incoming messages into Win32 FILETIME structures. Incoming 2-digit year dates will use the current century for the translation into Win32 FILETIME structures.
  • IMAP4: The IMAP4 transport translates 4-digit year dates on incoming messages into Win32 FILETIME structures.
  • TNEF Parsing: Reads dates on incoming Schedule+ messages. Dates in property format are stored in Win32 FILETIME format (inside a binary file, which are extracted from the text of the message).

Pocket Internet Explorer:

  • Storage: Dates are stored internally as Win32 FILETIME structures. There are three main areas where Pocket Internet Explorer receives dates from the outside world: Cookies, FTP listings, and Security Certificates. A 2-digit year that is less than 79 is interpreted as 20XX. A 2-digit year that is greater than or equal to 80 is interpreted as 19XX.

PIM:

  • Storage: Two-digit dates are not stored in the year field of any data structures. Various types of structures, such as FILETIME, SYSTEMTIME, YMD (a shorter version of SYSTEMTIME), and RTime (which is the relative date since 1/1/1601) are used to store dates. The PIM applications can handle dates from 1850 until 2399.
  • Formatting: Years are displayed in 2-digit and 4-digit formats, using the short and long date formats specified in the Regional Settings applet in Control Panel. Date entry fields parse and accept inputs that follow the formats specified in the Regional Settings applet. In any case where years are displayed in the 2-digit format, GetDateFormat is used to format the date.

2-digit shortcut handling:

Windows CE operating system:

  • Windows CE does not contain 2-digit conversion logic but OLE does. OLE converts a 2-digit date to a 4-digit date using the following rules:

00 - 29 converts to 2000 - 2029

30 - 99 converts to 1930 - 1999

2-Digit

4-Digit

28

2028

29

2029

30

1930

31

1931

See OLE DB compliance document for additional information.

Common date usage errors:

Windows CE:

  • Windows CE is dependent upon the OEM and their implementation of the OEM's real-time clock Application Programming Interfaces (APIs). The OEM must provide the correct information in their OAL/hardware to maintain proper date handling.

 

Pocket Excel:

  • If the system short date is changed from YY format (refers to a 2-digit year entry) in the Regional Settings applet in Control Panel, to YYYY format (refers to a 4-digit year entry), Pocket Excel will change the default display to be YYYY. (Note that Dates are stored internally in YYYY format)
  • Using a format such as "Dec 98", which is not fully distinguished, in text strings will break at the year 2001 (Dec 01). This is because 98 is too large to be the day of month, so Pocket Excel assumes it is a year. However, Pocket Excel assumes "Dec 01" refers to December 1 of the current year.
  • Due to the ambiguous nature of text dates, in general they will have some potential for error. Use serial dates whenever possible and take great care when transferring text dates.
  • The DATE () function is not designed to take 2-digit year shortcuts, since it receives numeric parameters. The DATE () function calculates a number less than 1900 as an offset from 1900. So, if you were to enter a formula such as =DATE (15,1,1), the resulting date would be January 1, 1915, not 2015.

 

Issues to be aware of when developing applications for Windows CE for Handheld PC Professional Edition:

  • The number of digits specified for a dateÆs century can be either 2 or 4 (e.g., 98 or 1998). This information is returned when GetLocaleInfo is used to request LOCALE_ICENTURY. The results of a request for the century information is based on the following:
    1. If the default value has not been overridden then the value returned is the default for the locale. The value returned by LOCAL_ICENTURY is based on the format of the default short date (LOCALE_SSHORTDATE). If the format of the short date is "yy" then a 2-digit century format is specified otherwise if the format is "yyyy" then a 4-digit century format is specified.
    2. If SetLocaleInfo is used with LOCALE_ICENTURY to change (override) the current default century format from a 2-digit to a 4-digit century format or vice versa.

The LOCAL_ICENTURY value for the current short date format is not updated to reflect the current century information if:

    1. The Regional Control Panel is used to change the default short date format from a 4-digit year to a 2-digit year, or vice versa.
    2. Using SetLocaleInfo(LOCALE_SSHORTDATE) the default short date format is changed from a 4-digit year to a 2-digit year, or vice versa.

In both cases the value returned for LOCALE_ICENTURY is the same as before the date format was changed. To compensate for this an application can retrieve the short date format and count the number of æyÆs that are in the year format.

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 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.


 

Thursday, October 7, 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.