Microsoft TechNet ITHome - Microsoft Year 2000 Product Guide
Microsoft Products
Product Entry Guide Detail


The Microsoft Year 2000 Resource Center Product Guide details specific Year 2000 information concerning Microsoft products. The information in the product guide is presented to assist IT professionals in planning their transition to the Year 2000. If you cannot find a specific product and it is not on the "Microsoft Products: Testing Yet to be Completed" list, you can assume it will NOT be tested for compliancy.
Microsoft will continually update the Year 2000 Product Guide with the most current Year 2000 test information. Visit the Year 2000 Product Guide for more details regarding the Microsoft Compliance Categories.

------------------------
Microsoft Year 2000 Resource Center
System Mgmt Server  1.2   (Dutch)

Product Summary
Product: System Mgmt Server Version: 1.2 Category:Compliant*
Language: Dutch OS: Win NT Release Date: 13 Sep 1996
Operational Range: 01 Jan 1980 - 31 Dec 2035
Prerequisites: Systems Management Server 1.2 Service Pack 4
Product Dependencies: Windows NT Server 3.51 (Service Pack 3) or later or Windows NT Server 4.0, Microsoft SQL Server 6.5
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

 

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 1.2 Service Pack 4 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

Systems Management Server 1.2 through Service Pack 3 is Compliant#.

The acceptable deviation:

When trying to inventory software users are unable to create a query with the user interface for files with a date stamp in the year 2000. Note: Any date prior to 1/1/2000 or after 12/31/2000 works properly. This issue can be worked around by importing a Package Definition File (PDF) which already contains an inventory rule rather than creating the rule in the user interface. Service Pack 4 resolves this issue.

Microsoft Systems Management Server version 1.2 Service Pack 4 is a prerequisite and is assumed for the information described below.

Systems Management Server 1.2 Service Pack 4 is available from:

ftp://ftp.microsoft.com/Softlib/MSLFILES/SMS12SP4.EXE

Service pack 4 fixes known issues with Systems Management Server 1.2 as indicated by the information below. Microsoft SMS 1.2 can use earlier versions of SQL Server, however SMS is dependent on SQL 6.5 for its Year 2000 test information. The Systems Management Server Installer, freely available as a web download for all version 1.2 customers, is also compliant from version 2.0.64 onwards. The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp

is compliant and older versions can be seamlessly upgraded to this version as needed.

Systems Management Server Architecture

Subsystem

Component

Microsoft's Testing Summary

Sites

Personal Computer Properties

Workstation Status

- Last Hardware scan

- Last Software scan

For both Last HW and SW scan

Before Year 2000 - Works properly

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" HW and SW scan for the respective client will not get updated properly on the server until the client's clock is past the Last HW and SW scan already represented on the server. Resetting the client’s clock to the correct time solves this problem until the next century.

 

Operating System

- Install Date

Operating Systems installed before the Year 2000 are represented properly in the SMS Admin User Interface before and after the Year 2000.

Operating Systems installed after the Year 2000 are represented correctly.

Operating Systems installed on 2/29/2000 are represented correctly

 

File

Properties

Site Properties

- Last report GMT

- Last report Local

Before Year 2000 - Works properly.

Site servers whose BIOS clocks rollover from 1999 to 2000, works properly.

Site servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" report GMT and Local will not get updated until the server's clock is ahead of the Last report GMT and Local already represented on the server. Resetting the server's clock to the correct time solves this problem.

 

Inventory

Hardware Inventory Frequency

- Every N Days

Software Inventory Frequency

- Every N Days

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, inventory will not occur until the client's clock is at the last HW or SW inventory + N days. This functionality is all on the client in the SMS.INI. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, updating the inventory frequency functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the update of the site properties will not occur until the site's date is past the last time the site control file was updated before the BIOS rollover error. Resetting the server's clock to the correct time solves this problem.

 

Clients

PCM Polling Interval,

- Every N Minutes

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover properly from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the interval works properly but offers from the server are slated to begin after a certain date. The client's clock is well in the past and therefore offers will not appear in the client's PCM User Interface. Resetting the clients' clock to the correct time solves this problem.

 

Account

Service account

- Last Valid Password Created

Represented properly.

If the site server's clock rolls-over to 1980 the account will not expire for an extra 20 Years and changing it through the SMS Admin User Interface is not possible until the systems date is past the last update for the site control file.

 

Outbox

- Schedule

If the server's BIOS clock works properly:

1999 rolling over to 2000 works properly.

2/29/2000 poses no problems.


If the server's BIOS clock does not rollover to the Year 2000, but reverts to 1980, whichever day of the week in 1980 the clock reverts to, and subsequent days, is the schedule the Outbox Schedule will follow. Regardless of this, the mechanism, which initiates the sending of information from this site server will not launch, because it views this as an "old" request to send.

 

Execute Queries

- Query results (Header bar)

Dates before Year 2000 - Works properly

Dates after Year 2000 -Works properly

 

Execute query with the following

- is

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is not

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is on or after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- is on or before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Define Query result Formats

Properties ( Identification)

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Machines with last activity

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are listed in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Jobs

File

"Jobs" Window

Dates are listed properly and sorted in correct chronological order.

 

New

Run Command on Workstation

Details

Send Phase

- Only if Not previously

sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Even if Previously Sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Run Workstation Command

- Offer after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clock rolls-over from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not occur until the site's date and time matches that for the job.

 

- Mandatory after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs become mandatory properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the mandatory job is launched.

Regarding Servers

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, this has no effect on the clients except the offer after and job schedule dates will prevent jobs from being launched or reaching the clients.

 

- Expires after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs expire properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not expire until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the job expires.

Regarding Servers

Before Year 2000 – Works properly.

Servers whose BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, job will not truly expire until the expiration date is reached on the server.

 

Job Schedule

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the job will not go active until the scheduled date.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, the old jobs now happen in the future

 

View

- All details

Dates are listed in correct chronological order.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Packages

File

Properties

Inventory

- Package Properties

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Alerts

New

- Alert query

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Events

File

Properties

Event Detail

- Time:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the old events now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SNMP Traps

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the traps now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SQL Server Messages

Event Display

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Database

Manager

Edit

Merge History For Selected PCs

Works properly.

 

Machines

Duplicate machines

- Last hardware scan

Regarding Clients

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, performs properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000, the last hardware scan is time stamped with the same time stamp of the first hardware scan. Resetting the client's clock to the correct time solves this problem for the next hardware scans.

Regarding Servers

Before Year 2000 - Works properly.

For servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

For servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, this has no effect.

 

Tools

Delete Collected files

Select by date

Select Cut-Off Date

- No Activity Since: (m/d/y)

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, it is the clients’ clock which time stamps this.

 

- Select by number of inactive

days

- Minimum inactive days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, does not function properly. Resetting the system clock solves this.

Package Control Manager

Log File

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, perform properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000 accurately report the inaccurate date(s).

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  1.2   (English)

Product Summary
Product: System Mgmt Server Version: 1.2 Category:Compliant*
Language: English OS: Win NT Release Date: 13 Sep 1996
Operational Range: 01 Jan 1980 - 31 Dec 2035
Prerequisites: Systems Management Server 1.2 Service Pack 4
Product Dependencies: Windows NT Server 3.51 (Service Pack 3) or later or Windows NT Server 4.0, Microsoft SQL Server 6.5
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

 

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 1.2 Service Pack 4 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

Systems Management Server 1.2 through Service Pack 3 is Compliant#.

The acceptable deviation:

When trying to inventory software users are unable to create a query with the user interface for files with a date stamp in the year 2000. Note: Any date prior to 1/1/2000 or after 12/31/2000 works properly. This issue can be worked around by importing a Package Definition File (PDF) which already contains an inventory rule rather than creating the rule in the user interface. Service Pack 4 resolves this issue.

Microsoft Systems Management Server version 1.2 Service Pack 4 is a prerequisite and is assumed for the information described below.

Systems Management Server 1.2 Service Pack 4 is available from:

ftp://ftp.microsoft.com/Softlib/MSLFILES/SMS12SP4.EXE

Service pack 4 fixes known issues with Systems Management Server 1.2 as indicated by the information below. Microsoft SMS 1.2 can use earlier versions of SQL Server, however SMS is dependent on SQL 6.5 for its Year 2000 test information. The Systems Management Server Installer, freely available as a web download for all version 1.2 customers, is also compliant from version 2.0.64 onwards. The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp

is compliant and older versions can be seamlessly upgraded to this version as needed.

Systems Management Server Architecture

Subsystem

Component

Microsoft's Testing Summary

Sites

Personal Computer Properties

Workstation Status

- Last Hardware scan

- Last Software scan

For both Last HW and SW scan

Before Year 2000 - Works properly

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" HW and SW scan for the respective client will not get updated properly on the server until the client's clock is past the Last HW and SW scan already represented on the server. Resetting the client’s clock to the correct time solves this problem until the next century.

 

Operating System

- Install Date

Operating Systems installed before the Year 2000 are represented properly in the SMS Admin User Interface before and after the Year 2000.

Operating Systems installed after the Year 2000 are represented correctly.

Operating Systems installed on 2/29/2000 are represented correctly

 

File

Properties

Site Properties

- Last report GMT

- Last report Local

Before Year 2000 - Works properly.

Site servers whose BIOS clocks rollover from 1999 to 2000, works properly.

Site servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" report GMT and Local will not get updated until the server's clock is ahead of the Last report GMT and Local already represented on the server. Resetting the server's clock to the correct time solves this problem.

 

Inventory

Hardware Inventory Frequency

- Every N Days

Software Inventory Frequency

- Every N Days

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, inventory will not occur until the client's clock is at the last HW or SW inventory + N days. This functionality is all on the client in the SMS.INI. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, updating the inventory frequency functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the update of the site properties will not occur until the site's date is past the last time the site control file was updated before the BIOS rollover error. Resetting the server's clock to the correct time solves this problem.

 

Clients

PCM Polling Interval,

- Every N Minutes

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover properly from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the interval works properly but offers from the server are slated to begin after a certain date. The client's clock is well in the past and therefore offers will not appear in the client's PCM User Interface. Resetting the clients' clock to the correct time solves this problem.

 

Account

Service account

- Last Valid Password Created

Represented properly.

If the site server's clock rolls-over to 1980 the account will not expire for an extra 20 Years and changing it through the SMS Admin User Interface is not possible until the systems date is past the last update for the site control file.

 

Outbox

- Schedule

If the server's BIOS clock works properly:

1999 rolling over to 2000 works properly.

2/29/2000 poses no problems.


If the server's BIOS clock does not rollover to the Year 2000, but reverts to 1980, whichever day of the week in 1980 the clock reverts to, and subsequent days, is the schedule the Outbox Schedule will follow. Regardless of this, the mechanism, which initiates the sending of information from this site server will not launch, because it views this as an "old" request to send.

 

Execute Queries

- Query results (Header bar)

Dates before Year 2000 - Works properly

Dates after Year 2000 -Works properly

 

Execute query with the following

- is

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is not

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is on or after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- is on or before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Define Query result Formats

Properties ( Identification)

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Machines with last activity

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are listed in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Jobs

File

"Jobs" Window

Dates are listed properly and sorted in correct chronological order.

 

New

Run Command on Workstation

Details

Send Phase

- Only if Not previously

sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Even if Previously Sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Run Workstation Command

- Offer after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clock rolls-over from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not occur until the site's date and time matches that for the job.

 

- Mandatory after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs become mandatory properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the mandatory job is launched.

Regarding Servers

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, this has no effect on the clients except the offer after and job schedule dates will prevent jobs from being launched or reaching the clients.

 

- Expires after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs expire properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not expire until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the job expires.

Regarding Servers

Before Year 2000 – Works properly.

Servers whose BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, job will not truly expire until the expiration date is reached on the server.

 

Job Schedule

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the job will not go active until the scheduled date.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, the old jobs now happen in the future

 

View

- All details

Dates are listed in correct chronological order.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Packages

File

Properties

Inventory

- Package Properties

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Alerts

New

- Alert query

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Events

File

Properties

Event Detail

- Time:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the old events now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SNMP Traps

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the traps now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SQL Server Messages

Event Display

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Database

Manager

Edit

Merge History For Selected PCs

Works properly.

 

Machines

Duplicate machines

- Last hardware scan

Regarding Clients

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, performs properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000, the last hardware scan is time stamped with the same time stamp of the first hardware scan. Resetting the client's clock to the correct time solves this problem for the next hardware scans.

Regarding Servers

Before Year 2000 - Works properly.

For servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

For servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, this has no effect.

 

Tools

Delete Collected files

Select by date

Select Cut-Off Date

- No Activity Since: (m/d/y)

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, it is the clients’ clock which time stamps this.

 

- Select by number of inactive

days

- Minimum inactive days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, does not function properly. Resetting the system clock solves this.

Package Control Manager

Log File

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, perform properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000 accurately report the inaccurate date(s).

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  1.2   (Finnish)

Product Summary
Product: System Mgmt Server Version: 1.2 Category:Compliant*
Language: Finnish OS: Win NT Release Date: 13 Sep 1996
Operational Range: 01 Jan 1980 - 31 Dec 2035
Prerequisites: Systems Management Server 1.2 Service Pack 4
Product Dependencies: Windows NT Server 3.51 (Service Pack 3) or later or Windows NT Server 4.0, Microsoft SQL Server 6.5
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

 

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 1.2 Service Pack 4 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

Systems Management Server 1.2 through Service Pack 3 is Compliant#.

The acceptable deviation:

When trying to inventory software users are unable to create a query with the user interface for files with a date stamp in the year 2000. Note: Any date prior to 1/1/2000 or after 12/31/2000 works properly. This issue can be worked around by importing a Package Definition File (PDF) which already contains an inventory rule rather than creating the rule in the user interface. Service Pack 4 resolves this issue.

Microsoft Systems Management Server version 1.2 Service Pack 4 is a prerequisite and is assumed for the information described below.

Systems Management Server 1.2 Service Pack 4 is available from:

ftp://ftp.microsoft.com/Softlib/MSLFILES/SMS12SP4.EXE

Service pack 4 fixes known issues with Systems Management Server 1.2 as indicated by the information below. Microsoft SMS 1.2 can use earlier versions of SQL Server, however SMS is dependent on SQL 6.5 for its Year 2000 test information. The Systems Management Server Installer, freely available as a web download for all version 1.2 customers, is also compliant from version 2.0.64 onwards. The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp

is compliant and older versions can be seamlessly upgraded to this version as needed.

Systems Management Server Architecture

Subsystem

Component

Microsoft's Testing Summary

Sites

Personal Computer Properties

Workstation Status

- Last Hardware scan

- Last Software scan

For both Last HW and SW scan

Before Year 2000 - Works properly

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" HW and SW scan for the respective client will not get updated properly on the server until the client's clock is past the Last HW and SW scan already represented on the server. Resetting the client’s clock to the correct time solves this problem until the next century.

 

Operating System

- Install Date

Operating Systems installed before the Year 2000 are represented properly in the SMS Admin User Interface before and after the Year 2000.

Operating Systems installed after the Year 2000 are represented correctly.

Operating Systems installed on 2/29/2000 are represented correctly

 

File

Properties

Site Properties

- Last report GMT

- Last report Local

Before Year 2000 - Works properly.

Site servers whose BIOS clocks rollover from 1999 to 2000, works properly.

Site servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" report GMT and Local will not get updated until the server's clock is ahead of the Last report GMT and Local already represented on the server. Resetting the server's clock to the correct time solves this problem.

 

Inventory

Hardware Inventory Frequency

- Every N Days

Software Inventory Frequency

- Every N Days

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, inventory will not occur until the client's clock is at the last HW or SW inventory + N days. This functionality is all on the client in the SMS.INI. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, updating the inventory frequency functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the update of the site properties will not occur until the site's date is past the last time the site control file was updated before the BIOS rollover error. Resetting the server's clock to the correct time solves this problem.

 

Clients

PCM Polling Interval,

- Every N Minutes

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover properly from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the interval works properly but offers from the server are slated to begin after a certain date. The client's clock is well in the past and therefore offers will not appear in the client's PCM User Interface. Resetting the clients' clock to the correct time solves this problem.

 

Account

Service account

- Last Valid Password Created

Represented properly.

If the site server's clock rolls-over to 1980 the account will not expire for an extra 20 Years and changing it through the SMS Admin User Interface is not possible until the systems date is past the last update for the site control file.

 

Outbox

- Schedule

If the server's BIOS clock works properly:

1999 rolling over to 2000 works properly.

2/29/2000 poses no problems.


If the server's BIOS clock does not rollover to the Year 2000, but reverts to 1980, whichever day of the week in 1980 the clock reverts to, and subsequent days, is the schedule the Outbox Schedule will follow. Regardless of this, the mechanism, which initiates the sending of information from this site server will not launch, because it views this as an "old" request to send.

 

Execute Queries

- Query results (Header bar)

Dates before Year 2000 - Works properly

Dates after Year 2000 -Works properly

 

Execute query with the following

- is

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is not

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is on or after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- is on or before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Define Query result Formats

Properties ( Identification)

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Machines with last activity

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are listed in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Jobs

File

"Jobs" Window

Dates are listed properly and sorted in correct chronological order.

 

New

Run Command on Workstation

Details

Send Phase

- Only if Not previously

sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Even if Previously Sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Run Workstation Command

- Offer after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clock rolls-over from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not occur until the site's date and time matches that for the job.

 

- Mandatory after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs become mandatory properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the mandatory job is launched.

Regarding Servers

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, this has no effect on the clients except the offer after and job schedule dates will prevent jobs from being launched or reaching the clients.

 

- Expires after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs expire properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not expire until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the job expires.

Regarding Servers

Before Year 2000 – Works properly.

Servers whose BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, job will not truly expire until the expiration date is reached on the server.

 

Job Schedule

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the job will not go active until the scheduled date.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, the old jobs now happen in the future

 

View

- All details

Dates are listed in correct chronological order.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Packages

File

Properties

Inventory

- Package Properties

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Alerts

New

- Alert query

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Events

File

Properties

Event Detail

- Time:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the old events now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SNMP Traps

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the traps now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SQL Server Messages

Event Display

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Database

Manager

Edit

Merge History For Selected PCs

Works properly.

 

Machines

Duplicate machines

- Last hardware scan

Regarding Clients

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, performs properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000, the last hardware scan is time stamped with the same time stamp of the first hardware scan. Resetting the client's clock to the correct time solves this problem for the next hardware scans.

Regarding Servers

Before Year 2000 - Works properly.

For servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

For servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, this has no effect.

 

Tools

Delete Collected files

Select by date

Select Cut-Off Date

- No Activity Since: (m/d/y)

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, it is the clients’ clock which time stamps this.

 

- Select by number of inactive

days

- Minimum inactive days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, does not function properly. Resetting the system clock solves this.

Package Control Manager

Log File

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, perform properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000 accurately report the inaccurate date(s).

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  1.2   (French)

Product Summary
Product: System Mgmt Server Version: 1.2 Category:Compliant*
Language: French OS: Win NT Release Date: 13 Sep 1996
Operational Range: 01 Jan 1980 - 31 Dec 2035
Prerequisites: Systems Management Server 1.2 Service Pack 4
Product Dependencies: Windows NT Server 3.51 (Service Pack 3) or later or Windows NT Server 4.0, Microsoft SQL Server 6.5
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

 

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 1.2 Service Pack 4 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

Systems Management Server 1.2 through Service Pack 3 is Compliant#.

The acceptable deviation:

When trying to inventory software users are unable to create a query with the user interface for files with a date stamp in the year 2000. Note: Any date prior to 1/1/2000 or after 12/31/2000 works properly. This issue can be worked around by importing a Package Definition File (PDF) which already contains an inventory rule rather than creating the rule in the user interface. Service Pack 4 resolves this issue.

Microsoft Systems Management Server version 1.2 Service Pack 4 is a prerequisite and is assumed for the information described below.

Systems Management Server 1.2 Service Pack 4 is available from:

ftp://ftp.microsoft.com/Softlib/MSLFILES/SMS12SP4.EXE

Service pack 4 fixes known issues with Systems Management Server 1.2 as indicated by the information below. Microsoft SMS 1.2 can use earlier versions of SQL Server, however SMS is dependent on SQL 6.5 for its Year 2000 test information. The Systems Management Server Installer, freely available as a web download for all version 1.2 customers, is also compliant from version 2.0.64 onwards. The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp

is compliant and older versions can be seamlessly upgraded to this version as needed.

Systems Management Server Architecture

Subsystem

Component

Microsoft's Testing Summary

Sites

Personal Computer Properties

Workstation Status

- Last Hardware scan

- Last Software scan

For both Last HW and SW scan

Before Year 2000 - Works properly

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" HW and SW scan for the respective client will not get updated properly on the server until the client's clock is past the Last HW and SW scan already represented on the server. Resetting the client’s clock to the correct time solves this problem until the next century.

 

Operating System

- Install Date

Operating Systems installed before the Year 2000 are represented properly in the SMS Admin User Interface before and after the Year 2000.

Operating Systems installed after the Year 2000 are represented correctly.

Operating Systems installed on 2/29/2000 are represented correctly

 

File

Properties

Site Properties

- Last report GMT

- Last report Local

Before Year 2000 - Works properly.

Site servers whose BIOS clocks rollover from 1999 to 2000, works properly.

Site servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" report GMT and Local will not get updated until the server's clock is ahead of the Last report GMT and Local already represented on the server. Resetting the server's clock to the correct time solves this problem.

 

Inventory

Hardware Inventory Frequency

- Every N Days

Software Inventory Frequency

- Every N Days

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, inventory will not occur until the client's clock is at the last HW or SW inventory + N days. This functionality is all on the client in the SMS.INI. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, updating the inventory frequency functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the update of the site properties will not occur until the site's date is past the last time the site control file was updated before the BIOS rollover error. Resetting the server's clock to the correct time solves this problem.

 

Clients

PCM Polling Interval,

- Every N Minutes

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover properly from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the interval works properly but offers from the server are slated to begin after a certain date. The client's clock is well in the past and therefore offers will not appear in the client's PCM User Interface. Resetting the clients' clock to the correct time solves this problem.

 

Account

Service account

- Last Valid Password Created

Represented properly.

If the site server's clock rolls-over to 1980 the account will not expire for an extra 20 Years and changing it through the SMS Admin User Interface is not possible until the systems date is past the last update for the site control file.

 

Outbox

- Schedule

If the server's BIOS clock works properly:

1999 rolling over to 2000 works properly.

2/29/2000 poses no problems.


If the server's BIOS clock does not rollover to the Year 2000, but reverts to 1980, whichever day of the week in 1980 the clock reverts to, and subsequent days, is the schedule the Outbox Schedule will follow. Regardless of this, the mechanism, which initiates the sending of information from this site server will not launch, because it views this as an "old" request to send.

 

Execute Queries

- Query results (Header bar)

Dates before Year 2000 - Works properly

Dates after Year 2000 -Works properly

 

Execute query with the following

- is

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is not

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is on or after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- is on or before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Define Query result Formats

Properties ( Identification)

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Machines with last activity

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are listed in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Jobs

File

"Jobs" Window

Dates are listed properly and sorted in correct chronological order.

 

New

Run Command on Workstation

Details

Send Phase

- Only if Not previously

sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Even if Previously Sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Run Workstation Command

- Offer after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clock rolls-over from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not occur until the site's date and time matches that for the job.

 

- Mandatory after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs become mandatory properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the mandatory job is launched.

Regarding Servers

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, this has no effect on the clients except the offer after and job schedule dates will prevent jobs from being launched or reaching the clients.

 

- Expires after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs expire properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not expire until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the job expires.

Regarding Servers

Before Year 2000 – Works properly.

Servers whose BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, job will not truly expire until the expiration date is reached on the server.

 

Job Schedule

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the job will not go active until the scheduled date.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, the old jobs now happen in the future

 

View

- All details

Dates are listed in correct chronological order.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Packages

File

Properties

Inventory

- Package Properties

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Alerts

New

- Alert query

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Events

File

Properties

Event Detail

- Time:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the old events now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SNMP Traps

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the traps now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SQL Server Messages

Event Display

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Database

Manager

Edit

Merge History For Selected PCs

Works properly.

 

Machines

Duplicate machines

- Last hardware scan

Regarding Clients

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, performs properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000, the last hardware scan is time stamped with the same time stamp of the first hardware scan. Resetting the client's clock to the correct time solves this problem for the next hardware scans.

Regarding Servers

Before Year 2000 - Works properly.

For servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

For servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, this has no effect.

 

Tools

Delete Collected files

Select by date

Select Cut-Off Date

- No Activity Since: (m/d/y)

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, it is the clients’ clock which time stamps this.

 

- Select by number of inactive

days

- Minimum inactive days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, does not function properly. Resetting the system clock solves this.

Package Control Manager

Log File

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, perform properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000 accurately report the inaccurate date(s).

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  1.2   (German)

Product Summary
Product: System Mgmt Server Version: 1.2 Category:Compliant*
Language: German OS: Win NT Release Date: 13 Sep 1996
Operational Range: 01 Jan 1980 - 31 Dec 2035
Prerequisites: Systems Management Server 1.2 Service Pack 4
Product Dependencies: Windows NT Server 3.51 (Service Pack 3) or later or Windows NT Server 4.0, Microsoft SQL Server 6.5
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

 

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 1.2 Service Pack 4 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

Systems Management Server 1.2 through Service Pack 3 is Compliant#.

The acceptable deviation:

When trying to inventory software users are unable to create a query with the user interface for files with a date stamp in the year 2000. Note: Any date prior to 1/1/2000 or after 12/31/2000 works properly. This issue can be worked around by importing a Package Definition File (PDF) which already contains an inventory rule rather than creating the rule in the user interface. Service Pack 4 resolves this issue.

Microsoft Systems Management Server version 1.2 Service Pack 4 is a prerequisite and is assumed for the information described below.

Systems Management Server 1.2 Service Pack 4 is available from:

ftp://ftp.microsoft.com/Softlib/MSLFILES/SMS12SP4.EXE

Service pack 4 fixes known issues with Systems Management Server 1.2 as indicated by the information below. Microsoft SMS 1.2 can use earlier versions of SQL Server, however SMS is dependent on SQL 6.5 for its Year 2000 test information. The Systems Management Server Installer, freely available as a web download for all version 1.2 customers, is also compliant from version 2.0.64 onwards. The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp

is compliant and older versions can be seamlessly upgraded to this version as needed.

Systems Management Server Architecture

Subsystem

Component

Microsoft's Testing Summary

Sites

Personal Computer Properties

Workstation Status

- Last Hardware scan

- Last Software scan

For both Last HW and SW scan

Before Year 2000 - Works properly

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" HW and SW scan for the respective client will not get updated properly on the server until the client's clock is past the Last HW and SW scan already represented on the server. Resetting the client’s clock to the correct time solves this problem until the next century.

 

Operating System

- Install Date

Operating Systems installed before the Year 2000 are represented properly in the SMS Admin User Interface before and after the Year 2000.

Operating Systems installed after the Year 2000 are represented correctly.

Operating Systems installed on 2/29/2000 are represented correctly

 

File

Properties

Site Properties

- Last report GMT

- Last report Local

Before Year 2000 - Works properly.

Site servers whose BIOS clocks rollover from 1999 to 2000, works properly.

Site servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" report GMT and Local will not get updated until the server's clock is ahead of the Last report GMT and Local already represented on the server. Resetting the server's clock to the correct time solves this problem.

 

Inventory

Hardware Inventory Frequency

- Every N Days

Software Inventory Frequency

- Every N Days

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, inventory will not occur until the client's clock is at the last HW or SW inventory + N days. This functionality is all on the client in the SMS.INI. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, updating the inventory frequency functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the update of the site properties will not occur until the site's date is past the last time the site control file was updated before the BIOS rollover error. Resetting the server's clock to the correct time solves this problem.

 

Clients

PCM Polling Interval,

- Every N Minutes

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover properly from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the interval works properly but offers from the server are slated to begin after a certain date. The client's clock is well in the past and therefore offers will not appear in the client's PCM User Interface. Resetting the clients' clock to the correct time solves this problem.

 

Account

Service account

- Last Valid Password Created

Represented properly.

If the site server's clock rolls-over to 1980 the account will not expire for an extra 20 Years and changing it through the SMS Admin User Interface is not possible until the systems date is past the last update for the site control file.

 

Outbox

- Schedule

If the server's BIOS clock works properly:

1999 rolling over to 2000 works properly.

2/29/2000 poses no problems.


If the server's BIOS clock does not rollover to the Year 2000, but reverts to 1980, whichever day of the week in 1980 the clock reverts to, and subsequent days, is the schedule the Outbox Schedule will follow. Regardless of this, the mechanism, which initiates the sending of information from this site server will not launch, because it views this as an "old" request to send.

 

Execute Queries

- Query results (Header bar)

Dates before Year 2000 - Works properly

Dates after Year 2000 -Works properly

 

Execute query with the following

- is

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is not

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is on or after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- is on or before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Define Query result Formats

Properties ( Identification)

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Machines with last activity

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are listed in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Jobs

File

"Jobs" Window

Dates are listed properly and sorted in correct chronological order.

 

New

Run Command on Workstation

Details

Send Phase

- Only if Not previously

sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Even if Previously Sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Run Workstation Command

- Offer after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clock rolls-over from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not occur until the site's date and time matches that for the job.

 

- Mandatory after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs become mandatory properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the mandatory job is launched.

Regarding Servers

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, this has no effect on the clients except the offer after and job schedule dates will prevent jobs from being launched or reaching the clients.

 

- Expires after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs expire properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not expire until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the job expires.

Regarding Servers

Before Year 2000 – Works properly.

Servers whose BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, job will not truly expire until the expiration date is reached on the server.

 

Job Schedule

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the job will not go active until the scheduled date.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, the old jobs now happen in the future

 

View

- All details

Dates are listed in correct chronological order.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Packages

File

Properties

Inventory

- Package Properties

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Alerts

New

- Alert query

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Events

File

Properties

Event Detail

- Time:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the old events now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SNMP Traps

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the traps now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SQL Server Messages

Event Display

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Database

Manager

Edit

Merge History For Selected PCs

Works properly.

 

Machines

Duplicate machines

- Last hardware scan

Regarding Clients

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, performs properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000, the last hardware scan is time stamped with the same time stamp of the first hardware scan. Resetting the client's clock to the correct time solves this problem for the next hardware scans.

Regarding Servers

Before Year 2000 - Works properly.

For servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

For servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, this has no effect.

 

Tools

Delete Collected files

Select by date

Select Cut-Off Date

- No Activity Since: (m/d/y)

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, it is the clients’ clock which time stamps this.

 

- Select by number of inactive

days

- Minimum inactive days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, does not function properly. Resetting the system clock solves this.

Package Control Manager

Log File

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, perform properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000 accurately report the inaccurate date(s).

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  1.2   (Italian)

Product Summary
Product: System Mgmt Server Version: 1.2 Category:Compliant*
Language: Italian OS: Win NT Release Date: 13 Sep 1996
Operational Range: 01 Jan 1980 - 31 Dec 2035
Prerequisites: Systems Management Server 1.2 Service Pack 4
Product Dependencies: Windows NT Server 3.51 (Service Pack 3) or later or Windows NT Server 4.0, Microsoft SQL Server 6.5
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

 

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 1.2 Service Pack 4 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

Systems Management Server 1.2 through Service Pack 3 is Compliant#.

The acceptable deviation:

When trying to inventory software users are unable to create a query with the user interface for files with a date stamp in the year 2000. Note: Any date prior to 1/1/2000 or after 12/31/2000 works properly. This issue can be worked around by importing a Package Definition File (PDF) which already contains an inventory rule rather than creating the rule in the user interface. Service Pack 4 resolves this issue.

Microsoft Systems Management Server version 1.2 Service Pack 4 is a prerequisite and is assumed for the information described below.

Systems Management Server 1.2 Service Pack 4 is available from:

ftp://ftp.microsoft.com/Softlib/MSLFILES/SMS12SP4.EXE

Service pack 4 fixes known issues with Systems Management Server 1.2 as indicated by the information below. Microsoft SMS 1.2 can use earlier versions of SQL Server, however SMS is dependent on SQL 6.5 for its Year 2000 test information. The Systems Management Server Installer, freely available as a web download for all version 1.2 customers, is also compliant from version 2.0.64 onwards. The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp

is compliant and older versions can be seamlessly upgraded to this version as needed.

Systems Management Server Architecture

Subsystem

Component

Microsoft's Testing Summary

Sites

Personal Computer Properties

Workstation Status

- Last Hardware scan

- Last Software scan

For both Last HW and SW scan

Before Year 2000 - Works properly

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" HW and SW scan for the respective client will not get updated properly on the server until the client's clock is past the Last HW and SW scan already represented on the server. Resetting the client’s clock to the correct time solves this problem until the next century.

 

Operating System

- Install Date

Operating Systems installed before the Year 2000 are represented properly in the SMS Admin User Interface before and after the Year 2000.

Operating Systems installed after the Year 2000 are represented correctly.

Operating Systems installed on 2/29/2000 are represented correctly

 

File

Properties

Site Properties

- Last report GMT

- Last report Local

Before Year 2000 - Works properly.

Site servers whose BIOS clocks rollover from 1999 to 2000, works properly.

Site servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" report GMT and Local will not get updated until the server's clock is ahead of the Last report GMT and Local already represented on the server. Resetting the server's clock to the correct time solves this problem.

 

Inventory

Hardware Inventory Frequency

- Every N Days

Software Inventory Frequency

- Every N Days

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, inventory will not occur until the client's clock is at the last HW or SW inventory + N days. This functionality is all on the client in the SMS.INI. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, updating the inventory frequency functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the update of the site properties will not occur until the site's date is past the last time the site control file was updated before the BIOS rollover error. Resetting the server's clock to the correct time solves this problem.

 

Clients

PCM Polling Interval,

- Every N Minutes

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover properly from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the interval works properly but offers from the server are slated to begin after a certain date. The client's clock is well in the past and therefore offers will not appear in the client's PCM User Interface. Resetting the clients' clock to the correct time solves this problem.

 

Account

Service account

- Last Valid Password Created

Represented properly.

If the site server's clock rolls-over to 1980 the account will not expire for an extra 20 Years and changing it through the SMS Admin User Interface is not possible until the systems date is past the last update for the site control file.

 

Outbox

- Schedule

If the server's BIOS clock works properly:

1999 rolling over to 2000 works properly.

2/29/2000 poses no problems.


If the server's BIOS clock does not rollover to the Year 2000, but reverts to 1980, whichever day of the week in 1980 the clock reverts to, and subsequent days, is the schedule the Outbox Schedule will follow. Regardless of this, the mechanism, which initiates the sending of information from this site server will not launch, because it views this as an "old" request to send.

 

Execute Queries

- Query results (Header bar)

Dates before Year 2000 - Works properly

Dates after Year 2000 -Works properly

 

Execute query with the following

- is

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is not

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is on or after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- is on or before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Define Query result Formats

Properties ( Identification)

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Machines with last activity

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are listed in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Jobs

File

"Jobs" Window

Dates are listed properly and sorted in correct chronological order.

 

New

Run Command on Workstation

Details

Send Phase

- Only if Not previously

sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Even if Previously Sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Run Workstation Command

- Offer after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clock rolls-over from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not occur until the site's date and time matches that for the job.

 

- Mandatory after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs become mandatory properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the mandatory job is launched.

Regarding Servers

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, this has no effect on the clients except the offer after and job schedule dates will prevent jobs from being launched or reaching the clients.

 

- Expires after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs expire properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not expire until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the job expires.

Regarding Servers

Before Year 2000 – Works properly.

Servers whose BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, job will not truly expire until the expiration date is reached on the server.

 

Job Schedule

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the job will not go active until the scheduled date.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, the old jobs now happen in the future

 

View

- All details

Dates are listed in correct chronological order.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Packages

File

Properties

Inventory

- Package Properties

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Alerts

New

- Alert query

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Events

File

Properties

Event Detail

- Time:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the old events now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SNMP Traps

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the traps now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SQL Server Messages

Event Display

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Database

Manager

Edit

Merge History For Selected PCs

Works properly.

 

Machines

Duplicate machines

- Last hardware scan

Regarding Clients

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, performs properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000, the last hardware scan is time stamped with the same time stamp of the first hardware scan. Resetting the client's clock to the correct time solves this problem for the next hardware scans.

Regarding Servers

Before Year 2000 - Works properly.

For servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

For servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, this has no effect.

 

Tools

Delete Collected files

Select by date

Select Cut-Off Date

- No Activity Since: (m/d/y)

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, it is the clients’ clock which time stamps this.

 

- Select by number of inactive

days

- Minimum inactive days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, does not function properly. Resetting the system clock solves this.

Package Control Manager

Log File

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, perform properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000 accurately report the inaccurate date(s).

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  1.2   (Japanese)

Product Summary
Product: System Mgmt Server Version: 1.2 Category:Compliant*
Language: Japanese OS: Win NT Release Date: 13 Sep 1996
Operational Range: 01 Jan 1980 - 31 Dec 2035
Prerequisites: Systems Management Server 1.2 Service Pack 4
Product Dependencies: Windows NT Server 3.51 (Service Pack 3) or later or Windows NT Server 4.0, Microsoft SQL Server 6.5
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 1.2 Service Pack 4 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

Systems Management Server 1.2 through Service Pack 3 is Compliant#.

The acceptable deviation:

When trying to inventory software users are unable to create a query with the user interface for files with a date stamp in the year 2000. Note: Any date prior to 1/1/2000 or after 12/31/2000 works properly. This issue can be worked around by importing a Package Definition File (PDF) which already contains an inventory rule rather than creating the rule in the user interface.

Microsoft Systems Management Server version 1.2 Service Pack 4 is a prerequisite and is assumed for the information described below.

Service pack 4 fixes all known issues with Systems Management Server 1.2 as indicated by the information below. Microsoft SMS 1.2 can use earlier versions of SQL Server, however SMS is dependent on SQL 6.5 for its Year 2000 test information. The Systems Management Server Installer, freely available as a web download for all version 1.2 customers, is also compliant from version 2.0.70.05 onwards. The current version at http://www.microsoft.com/japan/sms/installer/ is compliant and older versions can be seamlessly upgraded to this version as needed.

Systems Management Server Architecture

Subsystem

Component

Microsoft’s Testing Summary

Sites

Personal Computer Properties

Workstation Status

- Last Hardware scan

- Last Software scan

For both Last HW and SW scan

Before Year 2000 – Works properly

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" HW and SW scan for the respective client will not get updated properly on the server until the client’s clock is past the Last HW and SW scan already represented on the server. Resetting the client’s clock to the correct time solves this problem until the next century.

 

Operating System

- Install Date

All OS installed before the Year 2000 are represented properly in the SMS Admin UI before and after the Year 2000.

All OS installed after the Year 2000 are represented correctly.

All OS installed on 2/29/2000 are represented correctly

 

File

Properties

Site Properties

- Last report GMT

- Last report Local

Before Year 2000 – Works properly.

Site servers whose BIOS clocks rollover from 1999 to 2000, works properly.

Site servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" report GMT and Local will not get updated until the server’s clock is ahead of the Last report GMT and Local already represented on the server. Resetting the server’s clock to the correct time solves this problem.

 

Inventory

Hardware Inventory Frequency

- Every N Days

Software Inventory Frequency

- Every N Days

Regarding Clients

Before Year 2000 – Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, inventory will not occur until the client’s clock is at the last HW or SW inventory + N days. This functionality is all on the client in the SMS.INI. Resetting the client’s clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 – Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, updating the inventory frequency functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the update of the site properties will not occur until the site’s date is past the last time the site control file was updated before the BIOS rollover error. Resetting the server’s clock to the correct time solves this problem.

 

Clients

PCM Polling Interval,

- Every N Minutes

Regarding Clients

Before Year 2000 – Works properly.

Clients whose BIOS clocks rollover properly from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the interval works properly but offers from the server are slated to begin after a certain date. The client’s clock is well in the past and therefore offers will not appear in the client’s PCM UI. Resetting the clients’ clock to the correct time solves this problem.

 

Account

Service account

- Last Valid Password Created

Represented properly.

If the site server’s clock rolls-over to 1980 the account will not expire for an extra 20 Years and changing it through the SMS Admin UI is not possible until the systems date is past the last update for the site control file.

 

Outbox

- Schedule

If the server’s BIOS clock works properly:

1999 rolling over to 2000 causes no problems.

2/29/2000 poses no problems.


If the server’s BIOS clock does not rollover to the Year 2000, but reverts to 1980, whichever day of the week in 1980 the clock reverts to, and subsequent days, is the schedule the Outbox Schedule will follow. Regardless of this, the mechanism, which initiates the sending of information from this site server will not launch, because it views this as an "old" request to send.

 

Execute Queries

- Query results (Header bar)

Dates before Year 2000 – Works properly

Dates after Year 2000 – Works properly

 

Execute query with the following

- is

Dates before Year 2000 – Works properly

Dates after Year 2000 – Works properly

 

- is not

Dates before Year 2000 – Works properly

Dates after Year 2000 – Works properly

 

- is after

Dates before Year 2000 – Works properly

Dates after Year 2000 – Works properly

 

- is on or after

Dates before Year 2000 – Works properly

Dates after Year 2000 – Works properly

 

- is before

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

 

- is on or before

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

 

Define Query result Formats

Properties ( Identification)

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

 

Edit

Delete Special

- Machines with last activity

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

 

View

- All details

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

 

- Sort

Dates are listed in correct chronological order.

 

- Filter

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

Jobs

File

"Jobs" Window

Dates are listed properly and sorted in correct chronological order.

 

New

Run Command on Workstation

Details

Send Phase

- Only if Not previously

sent

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

 

- Even if Previously Sent

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

 

Run Workstation Command

- Offer after

Regarding Clients

Before Year 2000 – Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client’s clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 – Works properly.

Servers whose BIOS clock rolls-over from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not occur until the site’s date and time matches that for the job.

 

- Mandatory after

Regarding Clients

Before Year 2000 – Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs become mandatory properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client’s clock to the correct time solves this problem and the mandatory job is launched.

Regarding Servers

Before Year 2000 – Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, this has no effect on the clients except the offer after and job schedule dates will prevent jobs from being launched or reaching the clients.

 

- Expires after

Regarding Clients

Before Year 2000 – Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs expire properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not expire until the offer date for the job is reached by the client. Resetting the client’s clock to the correct time solves this problem and the job expires.

Regarding Servers

Before Year 2000 – Works properly.

Servers whose BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, job will not truly expire until the expiration date is reached on the server.

 

Job Schedule

Before Year 2000 – Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the job will not go active until the scheduled date.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

 

- Older Than: N Days

Before Year 2000 – Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, the old jobs now happen in the future

 

View

- All details

Dates are listed in correct chronological order.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

Packages

File

Properties

Inventory

- Package Properties

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

Alerts

New

- Alert query

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

Events

File

Properties

Event Detail

- Time:

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

 

- Older Than: N Days

Before Year 2000 – Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the old events now happen in the future

 

View

- All details

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

SNMP Traps

Edit

Delete Special

- Dated Before:

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

 

- Older Than: N Days

Before Year 2000 – Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the traps now happen in the future

 

View

- All details

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

SQL Server Messages

Event Display

Dates before Year 2000 – Works properly.

Dates after Year 2000 – Works properly.

Database

Manager

Edit

Merge History For Selected PCs

Works properly.

 

Machines

Duplicate machines

- Last hardware scan

Regarding Clients

Before Year 2000 – Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, performs properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000, the last hardware scan is time stamped with the same time stamp of the first hardware scan. Resetting the client’s clock to the correct time solves this problem for the next hardware scans.

Regarding Servers

Before Year 2000 – Works properly.

For servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

For servers whose BIOS clocks’ reset to 1980 on the rollover from 1999 to 2000, this has no effect.

 

Tools

Delete Collected files

Select by date

Select Cut-Off Date

- No Activity Since: (m/d/y)

Before Year 2000 – Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, it is the clients’ clock which time stamps this.

 

- Select by number of inactive

days

- Minimum inactive days

Before Year 2000 – Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, does not function properly. Resetting the system clock solves this.

Package Control Manager

Log File

Before Year 2000 – Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, performs properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000 accurately reports the inaccurate date(s).

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  1.2   (Korean)

Product Summary
Product: System Mgmt Server Version: 1.2 Category:Compliant*
Language: Korean OS: Win NT Release Date: 13 Sep 1996
Operational Range: 01 Jan 1980 - 31 Dec 2035
Prerequisites: Systems Management Server 1.2 Service Pack 4
Product Dependencies: Windows NT Server 3.51 (Service Pack 3) or later or Windows NT Server 4.0, Microsoft SQL Server 6.5
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

 

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 1.2 Service Pack 4 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

Systems Management Server 1.2 through Service Pack 3 is Compliant#.

The acceptable deviation:

When trying to inventory software users are unable to create a query with the user interface for files with a date stamp in the year 2000. Note: Any date prior to 1/1/2000 or after 12/31/2000 works properly. This issue can be worked around by importing a Package Definition File (PDF) which already contains an inventory rule rather than creating the rule in the user interface. Service Pack 4 resolves this issue.

Microsoft Systems Management Server version 1.2 Service Pack 4 is a prerequisite and is assumed for the information described below.

Systems Management Server 1.2 Service Pack 4 is available from:

ftp://ftp.microsoft.com/Softlib/MSLFILES/SMS12SP4.EXE

Service pack 4 fixes known issues with Systems Management Server 1.2 as indicated by the information below. Microsoft SMS 1.2 can use earlier versions of SQL Server, however SMS is dependent on SQL 6.5 for its Year 2000 test information. The Systems Management Server Installer, freely available as a web download for all version 1.2 customers, is also compliant from version 2.0.64 onwards. The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp

is compliant and older versions can be seamlessly upgraded to this version as needed.

Systems Management Server Architecture

Subsystem

Component

Microsoft's Testing Summary

Sites

Personal Computer Properties

Workstation Status

- Last Hardware scan

- Last Software scan

For both Last HW and SW scan

Before Year 2000 - Works properly

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" HW and SW scan for the respective client will not get updated properly on the server until the client's clock is past the Last HW and SW scan already represented on the server. Resetting the client’s clock to the correct time solves this problem until the next century.

 

Operating System

- Install Date

Operating Systems installed before the Year 2000 are represented properly in the SMS Admin User Interface before and after the Year 2000.

Operating Systems installed after the Year 2000 are represented correctly.

Operating Systems installed on 2/29/2000 are represented correctly

 

File

Properties

Site Properties

- Last report GMT

- Last report Local

Before Year 2000 - Works properly.

Site servers whose BIOS clocks rollover from 1999 to 2000, works properly.

Site servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" report GMT and Local will not get updated until the server's clock is ahead of the Last report GMT and Local already represented on the server. Resetting the server's clock to the correct time solves this problem.

 

Inventory

Hardware Inventory Frequency

- Every N Days

Software Inventory Frequency

- Every N Days

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, inventory will not occur until the client's clock is at the last HW or SW inventory + N days. This functionality is all on the client in the SMS.INI. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, updating the inventory frequency functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the update of the site properties will not occur until the site's date is past the last time the site control file was updated before the BIOS rollover error. Resetting the server's clock to the correct time solves this problem.

 

Clients

PCM Polling Interval,

- Every N Minutes

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover properly from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the interval works properly but offers from the server are slated to begin after a certain date. The client's clock is well in the past and therefore offers will not appear in the client's PCM User Interface. Resetting the clients' clock to the correct time solves this problem.

 

Account

Service account

- Last Valid Password Created

Represented properly.

If the site server's clock rolls-over to 1980 the account will not expire for an extra 20 Years and changing it through the SMS Admin User Interface is not possible until the systems date is past the last update for the site control file.

 

Outbox

- Schedule

If the server's BIOS clock works properly:

1999 rolling over to 2000 works properly.

2/29/2000 poses no problems.


If the server's BIOS clock does not rollover to the Year 2000, but reverts to 1980, whichever day of the week in 1980 the clock reverts to, and subsequent days, is the schedule the Outbox Schedule will follow. Regardless of this, the mechanism, which initiates the sending of information from this site server will not launch, because it views this as an "old" request to send.

 

Execute Queries

- Query results (Header bar)

Dates before Year 2000 - Works properly

Dates after Year 2000 -Works properly

 

Execute query with the following

- is

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is not

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is on or after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- is on or before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Define Query result Formats

Properties ( Identification)

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Machines with last activity

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are listed in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Jobs

File

"Jobs" Window

Dates are listed properly and sorted in correct chronological order.

 

New

Run Command on Workstation

Details

Send Phase

- Only if Not previously

sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Even if Previously Sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Run Workstation Command

- Offer after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clock rolls-over from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not occur until the site's date and time matches that for the job.

 

- Mandatory after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs become mandatory properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the mandatory job is launched.

Regarding Servers

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, this has no effect on the clients except the offer after and job schedule dates will prevent jobs from being launched or reaching the clients.

 

- Expires after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs expire properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not expire until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the job expires.

Regarding Servers

Before Year 2000 – Works properly.

Servers whose BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, job will not truly expire until the expiration date is reached on the server.

 

Job Schedule

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the job will not go active until the scheduled date.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, the old jobs now happen in the future

 

View

- All details

Dates are listed in correct chronological order.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Packages

File

Properties

Inventory

- Package Properties

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Alerts

New

- Alert query

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Events

File

Properties

Event Detail

- Time:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the old events now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SNMP Traps

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the traps now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SQL Server Messages

Event Display

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Database

Manager

Edit

Merge History For Selected PCs

Works properly.

 

Machines

Duplicate machines

- Last hardware scan

Regarding Clients

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, performs properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000, the last hardware scan is time stamped with the same time stamp of the first hardware scan. Resetting the client's clock to the correct time solves this problem for the next hardware scans.

Regarding Servers

Before Year 2000 - Works properly.

For servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

For servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, this has no effect.

 

Tools

Delete Collected files

Select by date

Select Cut-Off Date

- No Activity Since: (m/d/y)

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, it is the clients’ clock which time stamps this.

 

- Select by number of inactive

days

- Minimum inactive days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, does not function properly. Resetting the system clock solves this.

Package Control Manager

Log File

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, perform properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000 accurately report the inaccurate date(s).

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  1.2   (Norwegian)

Product Summary
Product: System Mgmt Server Version: 1.2 Category:Compliant*
Language: Norwegian OS: Win NT Release Date: 13 Sep 1996
Operational Range: 01 Jan 1980 - 31 Dec 2035
Prerequisites: Systems Management Server 1.2 Service Pack 4
Product Dependencies: Windows NT Server 3.51 (Service Pack 3) or later or Windows NT Server 4.0, Microsoft SQL Server 6.5
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

 

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 1.2 Service Pack 4 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

Systems Management Server 1.2 through Service Pack 3 is Compliant#.

The acceptable deviation:

When trying to inventory software users are unable to create a query with the user interface for files with a date stamp in the year 2000. Note: Any date prior to 1/1/2000 or after 12/31/2000 works properly. This issue can be worked around by importing a Package Definition File (PDF) which already contains an inventory rule rather than creating the rule in the user interface. Service Pack 4 resolves this issue.

Microsoft Systems Management Server version 1.2 Service Pack 4 is a prerequisite and is assumed for the information described below.

Systems Management Server 1.2 Service Pack 4 is available from:

ftp://ftp.microsoft.com/Softlib/MSLFILES/SMS12SP4.EXE

Service pack 4 fixes known issues with Systems Management Server 1.2 as indicated by the information below. Microsoft SMS 1.2 can use earlier versions of SQL Server, however SMS is dependent on SQL 6.5 for its Year 2000 test information. The Systems Management Server Installer, freely available as a web download for all version 1.2 customers, is also compliant from version 2.0.64 onwards. The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp

is compliant and older versions can be seamlessly upgraded to this version as needed.

Systems Management Server Architecture

Subsystem

Component

Microsoft's Testing Summary

Sites

Personal Computer Properties

Workstation Status

- Last Hardware scan

- Last Software scan

For both Last HW and SW scan

Before Year 2000 - Works properly

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" HW and SW scan for the respective client will not get updated properly on the server until the client's clock is past the Last HW and SW scan already represented on the server. Resetting the client’s clock to the correct time solves this problem until the next century.

 

Operating System

- Install Date

Operating Systems installed before the Year 2000 are represented properly in the SMS Admin User Interface before and after the Year 2000.

Operating Systems installed after the Year 2000 are represented correctly.

Operating Systems installed on 2/29/2000 are represented correctly

 

File

Properties

Site Properties

- Last report GMT

- Last report Local

Before Year 2000 - Works properly.

Site servers whose BIOS clocks rollover from 1999 to 2000, works properly.

Site servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" report GMT and Local will not get updated until the server's clock is ahead of the Last report GMT and Local already represented on the server. Resetting the server's clock to the correct time solves this problem.

 

Inventory

Hardware Inventory Frequency

- Every N Days

Software Inventory Frequency

- Every N Days

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, inventory will not occur until the client's clock is at the last HW or SW inventory + N days. This functionality is all on the client in the SMS.INI. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, updating the inventory frequency functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the update of the site properties will not occur until the site's date is past the last time the site control file was updated before the BIOS rollover error. Resetting the server's clock to the correct time solves this problem.

 

Clients

PCM Polling Interval,

- Every N Minutes

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover properly from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the interval works properly but offers from the server are slated to begin after a certain date. The client's clock is well in the past and therefore offers will not appear in the client's PCM User Interface. Resetting the clients' clock to the correct time solves this problem.

 

Account

Service account

- Last Valid Password Created

Represented properly.

If the site server's clock rolls-over to 1980 the account will not expire for an extra 20 Years and changing it through the SMS Admin User Interface is not possible until the systems date is past the last update for the site control file.

 

Outbox

- Schedule

If the server's BIOS clock works properly:

1999 rolling over to 2000 works properly.

2/29/2000 poses no problems.


If the server's BIOS clock does not rollover to the Year 2000, but reverts to 1980, whichever day of the week in 1980 the clock reverts to, and subsequent days, is the schedule the Outbox Schedule will follow. Regardless of this, the mechanism, which initiates the sending of information from this site server will not launch, because it views this as an "old" request to send.

 

Execute Queries

- Query results (Header bar)

Dates before Year 2000 - Works properly

Dates after Year 2000 -Works properly

 

Execute query with the following

- is

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is not

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is on or after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- is on or before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Define Query result Formats

Properties ( Identification)

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Machines with last activity

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are listed in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Jobs

File

"Jobs" Window

Dates are listed properly and sorted in correct chronological order.

 

New

Run Command on Workstation

Details

Send Phase

- Only if Not previously

sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Even if Previously Sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Run Workstation Command

- Offer after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clock rolls-over from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not occur until the site's date and time matches that for the job.

 

- Mandatory after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs become mandatory properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the mandatory job is launched.

Regarding Servers

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, this has no effect on the clients except the offer after and job schedule dates will prevent jobs from being launched or reaching the clients.

 

- Expires after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs expire properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not expire until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the job expires.

Regarding Servers

Before Year 2000 – Works properly.

Servers whose BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, job will not truly expire until the expiration date is reached on the server.

 

Job Schedule

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the job will not go active until the scheduled date.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, the old jobs now happen in the future

 

View

- All details

Dates are listed in correct chronological order.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Packages

File

Properties

Inventory

- Package Properties

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Alerts

New

- Alert query

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Events

File

Properties

Event Detail

- Time:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the old events now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SNMP Traps

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the traps now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SQL Server Messages

Event Display

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Database

Manager

Edit

Merge History For Selected PCs

Works properly.

 

Machines

Duplicate machines

- Last hardware scan

Regarding Clients

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, performs properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000, the last hardware scan is time stamped with the same time stamp of the first hardware scan. Resetting the client's clock to the correct time solves this problem for the next hardware scans.

Regarding Servers

Before Year 2000 - Works properly.

For servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

For servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, this has no effect.

 

Tools

Delete Collected files

Select by date

Select Cut-Off Date

- No Activity Since: (m/d/y)

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, it is the clients’ clock which time stamps this.

 

- Select by number of inactive

days

- Minimum inactive days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, does not function properly. Resetting the system clock solves this.

Package Control Manager

Log File

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, perform properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000 accurately report the inaccurate date(s).

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  1.2   (Spanish)

Product Summary
Product: System Mgmt Server Version: 1.2 Category:Compliant*
Language: Spanish OS: Win NT Release Date: 13 Sep 1996
Operational Range: 01 Jan 1980 - 31 Dec 2035
Prerequisites: Systems Management Server 1.2 Service Pack 4
Product Dependencies: Windows NT Server 3.51 (Service Pack 3) or later or Windows NT Server 4.0, Microsoft SQL Server 6.5
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

 

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 1.2 Service Pack 4 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

Systems Management Server 1.2 through Service Pack 3 is Compliant#.

The acceptable deviation:

When trying to inventory software users are unable to create a query with the user interface for files with a date stamp in the year 2000. Note: Any date prior to 1/1/2000 or after 12/31/2000 works properly. This issue can be worked around by importing a Package Definition File (PDF) which already contains an inventory rule rather than creating the rule in the user interface. Service Pack 4 resolves this issue.

Microsoft Systems Management Server version 1.2 Service Pack 4 is a prerequisite and is assumed for the information described below.

Systems Management Server 1.2 Service Pack 4 is available from:

ftp://ftp.microsoft.com/Softlib/MSLFILES/SMS12SP4.EXE

Service pack 4 fixes known issues with Systems Management Server 1.2 as indicated by the information below. Microsoft SMS 1.2 can use earlier versions of SQL Server, however SMS is dependent on SQL 6.5 for its Year 2000 test information. The Systems Management Server Installer, freely available as a web download for all version 1.2 customers, is also compliant from version 2.0.64 onwards. The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp

is compliant and older versions can be seamlessly upgraded to this version as needed.

Systems Management Server Architecture

Subsystem

Component

Microsoft's Testing Summary

Sites

Personal Computer Properties

Workstation Status

- Last Hardware scan

- Last Software scan

For both Last HW and SW scan

Before Year 2000 - Works properly

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" HW and SW scan for the respective client will not get updated properly on the server until the client's clock is past the Last HW and SW scan already represented on the server. Resetting the client’s clock to the correct time solves this problem until the next century.

 

Operating System

- Install Date

Operating Systems installed before the Year 2000 are represented properly in the SMS Admin User Interface before and after the Year 2000.

Operating Systems installed after the Year 2000 are represented correctly.

Operating Systems installed on 2/29/2000 are represented correctly

 

File

Properties

Site Properties

- Last report GMT

- Last report Local

Before Year 2000 - Works properly.

Site servers whose BIOS clocks rollover from 1999 to 2000, works properly.

Site servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" report GMT and Local will not get updated until the server's clock is ahead of the Last report GMT and Local already represented on the server. Resetting the server's clock to the correct time solves this problem.

 

Inventory

Hardware Inventory Frequency

- Every N Days

Software Inventory Frequency

- Every N Days

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, inventory will not occur until the client's clock is at the last HW or SW inventory + N days. This functionality is all on the client in the SMS.INI. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, updating the inventory frequency functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the update of the site properties will not occur until the site's date is past the last time the site control file was updated before the BIOS rollover error. Resetting the server's clock to the correct time solves this problem.

 

Clients

PCM Polling Interval,

- Every N Minutes

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover properly from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the interval works properly but offers from the server are slated to begin after a certain date. The client's clock is well in the past and therefore offers will not appear in the client's PCM User Interface. Resetting the clients' clock to the correct time solves this problem.

 

Account

Service account

- Last Valid Password Created

Represented properly.

If the site server's clock rolls-over to 1980 the account will not expire for an extra 20 Years and changing it through the SMS Admin User Interface is not possible until the systems date is past the last update for the site control file.

 

Outbox

- Schedule

If the server's BIOS clock works properly:

1999 rolling over to 2000 works properly.

2/29/2000 poses no problems.


If the server's BIOS clock does not rollover to the Year 2000, but reverts to 1980, whichever day of the week in 1980 the clock reverts to, and subsequent days, is the schedule the Outbox Schedule will follow. Regardless of this, the mechanism, which initiates the sending of information from this site server will not launch, because it views this as an "old" request to send.

 

Execute Queries

- Query results (Header bar)

Dates before Year 2000 - Works properly

Dates after Year 2000 -Works properly

 

Execute query with the following

- is

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is not

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is on or after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- is on or before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Define Query result Formats

Properties ( Identification)

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Machines with last activity

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are listed in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Jobs

File

"Jobs" Window

Dates are listed properly and sorted in correct chronological order.

 

New

Run Command on Workstation

Details

Send Phase

- Only if Not previously

sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Even if Previously Sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Run Workstation Command

- Offer after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clock rolls-over from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not occur until the site's date and time matches that for the job.

 

- Mandatory after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs become mandatory properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the mandatory job is launched.

Regarding Servers

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, this has no effect on the clients except the offer after and job schedule dates will prevent jobs from being launched or reaching the clients.

 

- Expires after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs expire properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not expire until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the job expires.

Regarding Servers

Before Year 2000 – Works properly.

Servers whose BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, job will not truly expire until the expiration date is reached on the server.

 

Job Schedule

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the job will not go active until the scheduled date.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, the old jobs now happen in the future

 

View

- All details

Dates are listed in correct chronological order.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Packages

File

Properties

Inventory

- Package Properties

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Alerts

New

- Alert query

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Events

File

Properties

Event Detail

- Time:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the old events now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SNMP Traps

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the traps now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SQL Server Messages

Event Display

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Database

Manager

Edit

Merge History For Selected PCs

Works properly.

 

Machines

Duplicate machines

- Last hardware scan

Regarding Clients

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, performs properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000, the last hardware scan is time stamped with the same time stamp of the first hardware scan. Resetting the client's clock to the correct time solves this problem for the next hardware scans.

Regarding Servers

Before Year 2000 - Works properly.

For servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

For servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, this has no effect.

 

Tools

Delete Collected files

Select by date

Select Cut-Off Date

- No Activity Since: (m/d/y)

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, it is the clients’ clock which time stamps this.

 

- Select by number of inactive

days

- Minimum inactive days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, does not function properly. Resetting the system clock solves this.

Package Control Manager

Log File

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, perform properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000 accurately report the inaccurate date(s).

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  1.2   (Swedish)

Product Summary
Product: System Mgmt Server Version: 1.2 Category:Compliant*
Language: Swedish OS: Win NT Release Date: 13 Sep 1996
Operational Range: 01 Jan 1980 - 31 Dec 2035
Prerequisites: Systems Management Server 1.2 Service Pack 4
Product Dependencies: Windows NT Server 3.51 (Service Pack 3) or later or Windows NT Server 4.0, Microsoft SQL Server 6.5
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

 

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 1.2 Service Pack 4 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

Systems Management Server 1.2 through Service Pack 3 is Compliant#.

The acceptable deviation:

When trying to inventory software users are unable to create a query with the user interface for files with a date stamp in the year 2000. Note: Any date prior to 1/1/2000 or after 12/31/2000 works properly. This issue can be worked around by importing a Package Definition File (PDF) which already contains an inventory rule rather than creating the rule in the user interface. Service Pack 4 resolves this issue.

Microsoft Systems Management Server version 1.2 Service Pack 4 is a prerequisite and is assumed for the information described below.

Systems Management Server 1.2 Service Pack 4 is available from:

ftp://ftp.microsoft.com/Softlib/MSLFILES/SMS12SP4.EXE

Service pack 4 fixes known issues with Systems Management Server 1.2 as indicated by the information below. Microsoft SMS 1.2 can use earlier versions of SQL Server, however SMS is dependent on SQL 6.5 for its Year 2000 test information. The Systems Management Server Installer, freely available as a web download for all version 1.2 customers, is also compliant from version 2.0.64 onwards. The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp

is compliant and older versions can be seamlessly upgraded to this version as needed.

Systems Management Server Architecture

Subsystem

Component

Microsoft's Testing Summary

Sites

Personal Computer Properties

Workstation Status

- Last Hardware scan

- Last Software scan

For both Last HW and SW scan

Before Year 2000 - Works properly

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" HW and SW scan for the respective client will not get updated properly on the server until the client's clock is past the Last HW and SW scan already represented on the server. Resetting the client’s clock to the correct time solves this problem until the next century.

 

Operating System

- Install Date

Operating Systems installed before the Year 2000 are represented properly in the SMS Admin User Interface before and after the Year 2000.

Operating Systems installed after the Year 2000 are represented correctly.

Operating Systems installed on 2/29/2000 are represented correctly

 

File

Properties

Site Properties

- Last report GMT

- Last report Local

Before Year 2000 - Works properly.

Site servers whose BIOS clocks rollover from 1999 to 2000, works properly.

Site servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the "Last" report GMT and Local will not get updated until the server's clock is ahead of the Last report GMT and Local already represented on the server. Resetting the server's clock to the correct time solves this problem.

 

Inventory

Hardware Inventory Frequency

- Every N Days

Software Inventory Frequency

- Every N Days

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, inventory will not occur until the client's clock is at the last HW or SW inventory + N days. This functionality is all on the client in the SMS.INI. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, updating the inventory frequency functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the update of the site properties will not occur until the site's date is past the last time the site control file was updated before the BIOS rollover error. Resetting the server's clock to the correct time solves this problem.

 

Clients

PCM Polling Interval,

- Every N Minutes

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover properly from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the interval works properly but offers from the server are slated to begin after a certain date. The client's clock is well in the past and therefore offers will not appear in the client's PCM User Interface. Resetting the clients' clock to the correct time solves this problem.

 

Account

Service account

- Last Valid Password Created

Represented properly.

If the site server's clock rolls-over to 1980 the account will not expire for an extra 20 Years and changing it through the SMS Admin User Interface is not possible until the systems date is past the last update for the site control file.

 

Outbox

- Schedule

If the server's BIOS clock works properly:

1999 rolling over to 2000 works properly.

2/29/2000 poses no problems.


If the server's BIOS clock does not rollover to the Year 2000, but reverts to 1980, whichever day of the week in 1980 the clock reverts to, and subsequent days, is the schedule the Outbox Schedule will follow. Regardless of this, the mechanism, which initiates the sending of information from this site server will not launch, because it views this as an "old" request to send.

 

Execute Queries

- Query results (Header bar)

Dates before Year 2000 - Works properly

Dates after Year 2000 -Works properly

 

Execute query with the following

- is

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is not

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is on or after

Dates before Year 2000 - Works properly

Dates after Year 2000 - Works properly

 

- is before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- is on or before

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Define Query result Formats

Properties ( Identification)

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Machines with last activity

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are listed in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Jobs

File

"Jobs" Window

Dates are listed properly and sorted in correct chronological order.

 

New

Run Command on Workstation

Details

Send Phase

- Only if Not previously

sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Even if Previously Sent

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Run Workstation Command

- Offer after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clocks rollover from 1999 to 2000, works properly.

Clients whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem.

Regarding Servers

Before Year 2000 - Works properly.

Servers whose BIOS clock rolls-over from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the offer will not occur until the site's date and time matches that for the job.

 

- Mandatory after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs become mandatory properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not appear on the client until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the mandatory job is launched.

Regarding Servers

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, this has no effect on the clients except the offer after and job schedule dates will prevent jobs from being launched or reaching the clients.

 

- Expires after

Regarding Clients

Before Year 2000 - Works properly.

Clients whose BIOS clock rolls-over from 1999 to 2000, jobs expire properly.

Clients whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, the offer will not expire until the offer date for the job is reached by the client. Resetting the client's clock to the correct time solves this problem and the job expires.

Regarding Servers

Before Year 2000 – Works properly.

Servers whose BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the roll-over from 1999 to 2000, job will not truly expire until the expiration date is reached on the server.

 

Job Schedule

Before Year 2000 - Works properly.

Servers whose BIOS clocks rollover properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, the job will not go active until the scheduled date.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, the old jobs now happen in the future

 

View

- All details

Dates are listed in correct chronological order.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Packages

File

Properties

Inventory

- Package Properties

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Alerts

New

- Alert query

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Events

File

Properties

Event Detail

- Time:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the old events now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SNMP Traps

Edit

Delete Special

- Dated Before:

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Older Than: N Days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks reset to 1980 on the rollover from 1999 to 2000, the traps now happen in the future

 

View

- All details

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

 

- Sort

Dates are sorted in correct chronological order.

 

- Filter

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

SQL Server Messages

Event Display

Dates before Year 2000 - Works properly.

Dates after Year 2000 - Works properly.

Database

Manager

Edit

Merge History For Selected PCs

Works properly.

 

Machines

Duplicate machines

- Last hardware scan

Regarding Clients

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, performs properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000, the last hardware scan is time stamped with the same time stamp of the first hardware scan. Resetting the client's clock to the correct time solves this problem for the next hardware scans.

Regarding Servers

Before Year 2000 - Works properly.

For servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

For servers whose BIOS clocks' reset to 1980 on the rollover from 1999 to 2000, this has no effect.

 

Tools

Delete Collected files

Select by date

Select Cut-Off Date

- No Activity Since: (m/d/y)

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clock resets to 1980 on the rollover from 1999 to 2000, it is the clients’ clock which time stamps this.

 

- Select by number of inactive

days

- Minimum inactive days

Before Year 2000 - Works properly.

Servers where the BIOS clock rolls-over properly from 1999 to 2000, functions properly.

Servers whose BIOS clocks resets to 1980 on the rollover from 1999 to 2000, does not function properly. Resetting the system clock solves this.

Package Control Manager

Log File

Before Year 2000 - Works properly.

Clients where the BIOS clock rolls-over from 1999 to 2000, perform properly.

Clients where the BIOS clock resets to 1980 on the rollover from 1999 to 2000 accurately report the inaccurate date(s).

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Arabic)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Arabic OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Chinese - Simplified)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Chinese - Simplified OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Chinese - Traditional)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Chinese - Traditional OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Czech)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Czech OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Danish)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Danish OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Dutch)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Dutch OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (English)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: English OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Finnish)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Finnish OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (French)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: French OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (German)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: German OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Greek)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Greek OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Hebrew)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Hebrew OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Hungarian)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Hungarian OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Italian)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Italian OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Japanese)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Japanese OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Korean)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Korean OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Norwegian)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Norwegian OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Polish)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Polish OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Portuguese (Brazil))

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Portuguese (Brazil) OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Portuguese)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Portuguese OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Russian)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Russian OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Spanish)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Spanish OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Swedish)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Swedish OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
System Mgmt Server  2.0   (Turkish)

Product Summary
Product: System Mgmt Server Version: 2.0 Category:Compliant
Language: Turkish OS: Win NT Release Date: 08 Feb 1999
Operational Range: 01 Jan 1996 - 31 Dec 2035
Prerequisites: None
Product Dependencies: Windows NT Server 3.51 Service Pack 5 plus Year 2000 updates, Windows NT Server 4.0 Service Pack 4 plus Year 2000 updates, SQL Server 6.5 Service Pack 5, SQL Server 7.0
Clock Dependencies: System Clock
Last Updated: 21 Oct 1999
Product Details

Product Maintenance: While Microsoft continues to recommend that customers install the most current Service Pack/Release for non-Year 2000 reasons, we understand that, for many reasons, this may not be possible. In order to aid our customers’ Year 2000 efforts, Microsoft intends to maintain Systems Management Server 2.0 as compliant through January 1, 2001. Newer Service Packs are also to be maintained as compliant, and may include additional non-Year 2000 updates. This is intended to minimize the Year 2000 as a reason to upgrade.

The Systems Management Server Installer, freely available as a web download for all version 1.2 customers and included with Systems Management Server 2.0, is also compliant from version 2.0.64 onwards (this is the version that shipped with Systems Management Server 2.0). The current version at http://www.microsoft.com/smsmgmt/downloads/install.asp is compliant and older versions can be seamlessly upgraded to this version as needed.

How the product handles dates:

Microsoft Foundation Classes (MFC) CTime classes, and C run time functions handle internal processing of date and time information that support dates from 1/1/1970 through 12/31/2035

The Systems Management Server (SMS) 2.0 user interface utilizes Date and Time Picker Common Controls (DATETIMEPIC_CLASS) that are in COMCTL32.DLL. These support dates from 01/01/1976 through 12/31/2035

Two-digit shortcut handling:

The Date and Time Picker Common Controls (DATETIMEPIC_CLASS) support 2-digit shortcut dates from 01/01/1976 through 12/31/2029. In other words 76 - 99 are interpreted as 1976 to 1999, and 00 - 29 are interpreted as 2000 - 2029. Dates before 01/01/1976 or after 12/31/2029 defaults to 01/01/1976.

Note: Dates from 01/01/2030 through 12/31/2035 are valid, but the year must be entered using 4 digits.

Testing guidelines and recommendations:

Microsoft understands that for various reasons customers may be required to conduct their own year 2000 certification testing. Microsoft provides the test recommendations below to aid customers in conducting their own year 2000 certification of Microsoft Systems Management Server.

SMS 2.0 Year 2000 Suggested Test Matrix

 

Feature

Scenario

Expected Testing Summary

Admin User Interface/ Remote Admin

 

 

 

Enter 2-digit shortcut for date

  • before 2000
  • 2000
  • 29 February 2000
  • well after 2000 but before 2036

Compliant

Enter 4-digit date

  • before 2000
  • 2000
  • 29 February 2000
  • w ell after 2000 but before 2036

Compliant

Intra site

Site server in 1 time zone and other intra site servers in another:

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Inter site

Site servers in different time zones

  • both in 1999
  • One server in 1999 and the other in 2000
  • both in 2000
  • One server 29 February 2000 the other before or after
  • both well into 2000

Compliant

Data Maintenance

Tasks: Deleted Age older than ###

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Tasks: Scheduled to start after ??? \ Latest start time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Fault Management

(Crystal Reports, Status, FM)

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Scheduling Options

  • Two-digit year 00 through 02

Compliant

Keep messages for X days

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Sort date from through

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Queries

  • Spanning 1999 > 2000
  • 2000
  • Well past 2000 but before 2036

Compliant

Tools

Reports, date related

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Client

Discovery

Assignment

Installation

Logon point update schedule

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Discovery Method polling schedule

(Poll every X days \ weeks \ months)

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective ??/??/?? ??:??

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software with dates

  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Hardware Inventory

Simple Schedule: hours, days, weeks

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Full schedule: Occurs every ## days effective HH:MM DD/MM/YYYY

  • Entered before 2000 but not effective until 2000
  • Entered in 2000 and effective in 2000
  • 29 February 2000
  • Entered well past 2000 and effective well past 2000

Compliant

Software Distribution

Check for programs every ## minutes

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Start rime \ End time

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Mandatory

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Advertisements Interval Since ???

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Software Metering

Configuration polling interval

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Checked out expiration date

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inactive for X amount of time.

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Local Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site License balancing: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 200029 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Site Management: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Inter site Data collection: Occurs every "recurrence pattern"

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Remote Control

Chat across time zones

  • Spanning 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

File transfer Spanning

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 
  • RC session across time zones1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

Network Discovery

Scheduled Discovery

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Expired Discovery Data Is Deleted

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

Discovery Data Has Correct Time Stamp

  • 1999 > 2000
  • 2000
  • 29 February 2000
  • Well past 2000 but before 2036

Compliant

 

 


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
Take Control  1.0   (English)

Product Summary
Product: Take Control Version: 1.0 Category:Compliant
Language: English OS: 32-Bit Win Release Date: 23 Oct 1998
Operational Range: -
Prerequisites: None
Product Dependencies: None
Clock Dependencies: None
Last Updated: 28 Oct 1999
Product Details

How the product handles dates:

Take Control system controller and the Take Control PC software do not handle dates or perform 2-digit shortcut interpretations.


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
Take Control  1.5   (English)

Product Summary
Product: Take Control Version: 1.5 Category:Compliant
Language: English OS: 32-Bit Win Release Date: 01 Jun 1998
Operational Range: -
Prerequisites: None
Product Dependencies: None
Clock Dependencies: None
Last Updated: 28 Oct 1999
Product Details

How the product handles dates:

Take Control system controller and the Take Control PC software do not handle dates or perform 2-digit shortcut interpretations.


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
Taxsaver  1.0 (99)   (English British)

Product Summary
Product: Taxsaver Version: 1.0 (99) Category:Compliant
Language: English British OS: 32-Bit Win Release Date: 17 May 1999
Operational Range: 01 Jan 0100 - 31 Dec 9999
Prerequisites: None
Product Dependencies: None
Clock Dependencies: None
Last Updated: 14 Oct 1999
Product Details

How the product handles dates:

The product uses dates to determine taxation allowances for the tax year ending 5 April 1999. Although the product can accept a future date (i.e. 2000), the tax code does not require or ask of one. Out of range dates for the given tax year are identified via a validation process, which calculates whether the date falls within the tax law criteria, as the legislation requires it.

Two-digit shortcut handling:

Dates that can be entered are 4 digits as described by the UK Inland Revenue taxation authority

Common date usage errors:

Entering the date in an incorrect format (dd/mm/yyyy) shows an error message (tool tip that appears above the data entry point) the customer must correct before moving to the next data entry point.

Testing guidelines and recommendations:

Enter an illegal format into the date field or a date that is not in the format dd/mm/yyyy, will produce a message in the form of a tool tip that will need to be corrected before tabbing to the next field.


Legend of Symbols:
*The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
#The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
Note: Compliance ratings given for each product assume that all recommended actions have been taken.


Microsoft Year 2000 Resource Center
Team Manager  1.0   (English)

Product Summary
Product: Team Manager Version: 1.0 Category:Compliant
Language: English OS: 32-Bit Win Release Date: 01 Oct 1996
Operational Range: 01 Jan 1984 - 31 Dec 2050
Prerequisites: NONE
Product Dependencies: Windows 95 (12Mb RAM for Manager, 8Mb for resource), or Windows NT 3.51, or Windows NT 4 (16Mb RAM for Manager, 12Mb RAM for resource)
Clock Dependencies: System Clock
Last Updated: 21 Jun 1999
Product Details
Version: 1, Service Release-1

Description of how the product handles dates:
  • Storage.  Microsoft Team Manager stores all dates in a 32-bit data structure in the form of days from January 1, 1984 and minutes since midnight. This circumvents the possibility that a date may be stored with a 2-digit year because the date and year are not stored, only the duration since January 1, 1984.

          Microsoft Team Manager schedules projects within a finite time period extending from January 1, 1984, to December 31, 2050. Team Manager does not allow any tasks outside these bounds or status reports from resources
  • Parsing on date entry.  Microsoft Team Manager includes date entry points in which users may enter a date or a date-range. Team Manager allows and processes entries with 2-digit years.  However, since Team Manager's calendar doesn't span an entire century, the product always interprets 2-digit year entries in the correct century.


    2-digit shortcut handling:
    Conversion of 2-digit shortcut assumes a date window of 1984 through 2050.

    Common date usage errors:
  • The core application of Team Manager recognizes only dates within the 1984-2050 timeframe. Accordingly, any given date must either be in the 20th or 21st century resulting in unambiguous resolution of dates based on the 1984-2050 date window.  For example, if you enter the date 1/1/01, Microsoft Project recognizes this as 1/1/2001.  
  • Under some circumstances described in the Product Guide for the Visual Basic Development Environment, custom programming features of Visual Basic may improperly recognize a 2-digit year as being in the 21st century instead of the 20th century. If applied against Team Manager, the internal year boundaries in Team Manager (1984–2050) will prevail and the entry will be rejected.

  • In Team Manager, dates between 1/1/84 and 12/31/50 are displayed in all task related views or the Custom Fields "Date" and "Date Range" for both tasks and resources.  The frequency of the status reports requests by manager will affect which day is shown as the last day to receive a status report in Work related views. Remaining Work, sent by a resource in a Status Report, for a task with a Deadline of 12/31/50 will not be displayed or considered for any further scheduling.

  • Resources cannot enter actuals for dates prior to 1/1/84 or past 12/31/50.  If tasks have Remaining Work past 12/31/50 they will be displayed as such, but no scheduling or date entry actions is allowed past this date.  Resources cannot send subsequent status reports for new tasks assigned with deadlines within the time frame 1984 - 2050 after sending a report on 12/31/50.

    Testing guidelines and recommendations:
    In general, avoid testing in a production environment because we cannot predict side effects with other products. Interoperability testing with other Microsoft Office products can be conducted safely.

  • Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    TechNet CD Delivery Software  2.52.008   (English)

    Product Summary
    Product: TechNet CD Delivery Software Version: 2.52.008 Category:Compliant
    Language: English OS: 32-Bit Win Release Date: 18 Nov 1998
    Operational Range: -
    Prerequisites: None
    Product Dependencies: Windows 3.1, Windows 95, Windows NT
    Clock Dependencies: None Known
    Last Updated: 09 Dec 1998
    Product Details

    Operational Range for Data: Tested though 2035

    The information in this Product Guide applies to the delivery software found on the monthly issues of TechNet CD-ROM subscription that allows users to access the content on the TechNet CD-ROM.

    How the product handles dates:

    The TechNet CD Delivery Software does not use dates.


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Transaction Server    (English)

    Product Summary
    Product: Transaction Server Version: Category:Compliant*
    Language: English OS: Win NT Release Date: N/A
    Operational Range: -
    Prerequisites: Windows NT 4.0 SP4
    Product Dependencies:
    Clock Dependencies:
    Last Updated: 26 Aug 1999
    Product Details

    This component is an integral part of Windows NT Server. Click here to go to the Windows NT 4, sp4 compliance document.


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Ultimate Climb  1.0   (English)

    Product Summary
    Product: Ultimate Climb Version: 1.0 Category:Compliant
    Language: English OS: 32-Bit Win Release Date: 01 Sep 1996
    Operational Range: -
    Prerequisites: NONE
    Product Dependencies: Win 95, Win NT 4
    Clock Dependencies: System Clock
    Last Updated: 02 Nov 1999
    Product Details

     

    How the product handles dates:

    No date handling or two-digit shortcut interpretation is performed.

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Ultimate Robot  1.0   (English)

    Product Summary
    Product: Ultimate Robot Version: 1.0 Category:Compliant
    Language: English OS: 16-Bit Win Release Date: 01 Sep 1994
    Operational Range: -
    Prerequisites: NONE
    Product Dependencies: DOS or Win 3.1
    Clock Dependencies: System Clock
    Last Updated: 02 Nov 1999
    Product Details

     

    How the product handles dates:

    No date handling or two-digit shortcut interpretation is performed.

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Urban Assault  1.0   (English)

    Product Summary
    Product: Urban Assault Version: 1.0 Category:Compliant
    Language: English OS: 32-Bit Win Release Date: 15 Jul 1998
    Operational Range: 15 Jul 1998 - 31 Dec 2035
    Prerequisites: None
    Product Dependencies: DirectX, DXMedia
    Clock Dependencies: None
    Last Updated: 27 Sep 1999
    Product Details

    How the product handles dates:

    This product does not handle dates or perform 2-digit shortcut interpretations.

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  1.0   (Chinese - Traditional)

    Product Summary
    Product: Visual Basic (16-bit) Version: 1.0 Category:Not Compliant
    Language: Chinese - Traditional OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  1.0   (English)

    Product Summary
    Product: Visual Basic (16-bit) Version: 1.0 Category:Not Compliant
    Language: English OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  1.0   (French)

    Product Summary
    Product: Visual Basic (16-bit) Version: 1.0 Category:Not Compliant
    Language: French OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  1.0   (German)

    Product Summary
    Product: Visual Basic (16-bit) Version: 1.0 Category:Not Compliant
    Language: German OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  1.0   (Italian)

    Product Summary
    Product: Visual Basic (16-bit) Version: 1.0 Category:Not Compliant
    Language: Italian OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  1.0   (Japanese)

    Product Summary
    Product: Visual Basic (16-bit) Version: 1.0 Category:Not Compliant
    Language: Japanese OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  1.0   (Spanish)

    Product Summary
    Product: Visual Basic (16-bit) Version: 1.0 Category:Not Compliant
    Language: Spanish OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  2.0   (Chinese - Traditional)

    Product Summary
    Product: Visual Basic (16-bit) Version: 2.0 Category:Not Compliant
    Language: Chinese - Traditional OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  2.0   (English)

    Product Summary
    Product: Visual Basic (16-bit) Version: 2.0 Category:Not Compliant
    Language: English OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  2.0   (French)

    Product Summary
    Product: Visual Basic (16-bit) Version: 2.0 Category:Not Compliant
    Language: French OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  2.0   (German)

    Product Summary
    Product: Visual Basic (16-bit) Version: 2.0 Category:Not Compliant
    Language: German OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  2.0   (Italian)

    Product Summary
    Product: Visual Basic (16-bit) Version: 2.0 Category:Not Compliant
    Language: Italian OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  2.0   (Japanese)

    Product Summary
    Product: Visual Basic (16-bit) Version: 2.0 Category:Not Compliant
    Language: Japanese OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  2.0   (Spanish)

    Product Summary
    Product: Visual Basic (16-bit) Version: 2.0 Category:Not Compliant
    Language: Spanish OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  3.0   (Chinese - Traditional)

    Product Summary
    Product: Visual Basic (16-bit) Version: 3.0 Category:Not Compliant
    Language: Chinese - Traditional OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  3.0   (English)

    Product Summary
    Product: Visual Basic (16-bit) Version: 3.0 Category:Not Compliant
    Language: English OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  3.0   (French)

    Product Summary
    Product: Visual Basic (16-bit) Version: 3.0 Category:Not Compliant
    Language: French OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  3.0   (German)

    Product Summary
    Product: Visual Basic (16-bit) Version: 3.0 Category:Not Compliant
    Language: German OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  3.0   (Italian)

    Product Summary
    Product: Visual Basic (16-bit) Version: 3.0 Category:Not Compliant
    Language: Italian OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  3.0   (Spanish)

    Product Summary
    Product: Visual Basic (16-bit) Version: 3.0 Category:Not Compliant
    Language: Spanish OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: None
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 16 Nov 1999
    Product Details

    This report applies to:
    Standard and Professional Editions of Microsoft Visual Basic 3.0 and 2.0
    Microsoft Visual Basic programming system for Windows, version 1.0

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year


    Known Issues:
    VB 3.0, 2.0, 1.0:

    Visual Basic 3.0 and all prior versions convert all two-digit years to the 1900s.

    See KB #Q162718.


    Creating Year 2000 compliant Visual Basic applications with versions 1, 2, or 3.
    While Microsoft made the determination to classify Visual Basic 3.0 and prior as non-compliant with Year 2000 compatibility, using responsible programming practices, developers can create applications that are fully Year 2000 compliant, as is detailed below. By default, the passing of a two-digit year in a date (such as 7/3/45) is interpreted by Visual Basic 3.0 and prior to be in the 1900’s. In many cases, applications can be easily modified and recompiled for Year 2000 compatibility by converting to four-digit date fields.

    2-Digit Date Conversion
    ------------------------------------------------------------------
    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) forces Visual Basic to assume to what century the date corresponds.
    For all versions of Visual Basic for Windows (including its predecessors such as Visual Basic for MS-DOS and QuickBasic) prior to and including 3.0, 2-digit years were always assumed to be in the 1900s. The code to implement this default was built into each version's run-time library and does not depend on the version of the operating system or the century of the current system date.

    Between the development cycles for Visual Basic 3.0 and 4.0, two new entities emerged: Visual Basic for Applications and OLE Automation. Prior to the advent of these technologies, Visual Basic's runtime library
    contained the code responsible for converting a 2-digit year to a 4-digit year. OLE Automation exposed a great deal of functionality that other applications could access. Visual Basic for Applications did not need to implement this code; it could make calls to the OLE Automation libraries instead.
    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.
    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.
    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.
    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718 at

    What Does All of This Mean to Developers Who Use Visual Basic?
    --------------------------------------------------------------
    Visual Basic 3.0 and prior versions convert all 2-digit years to the 1900s.
    Visual Basic 4.0 (16-bit) converts all 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation
    libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.
    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function that converts all 2-digit years to the century of the
    current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted all 2-digit years to the century of the current system date. Later 32-bit
    Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the
    2000s.
    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 1900s if the 2-digit year is between 30 and 99. If the 2-digit year is between 00 and 29, the date is converted to the 2000s.

    What if I Don't Like Those Defaults?
    ------------------------------------
    You may want to use your own set of rules instead of relying on the defaults native to Visual Basic. For example, you may want to enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.
    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, then convert that date string with the 4-digit year into a date variable.

    Sample Code
    -----------
    The following code evaluates the data entered into a textbox named txtDate when you click cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted
    by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic. Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.
    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:
    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  4.0   (Chinese - Traditional)

    Product Summary
    Product: Visual Basic (16-bit) Version: 4.0 Category:Compliant*#
    Language: Chinese - Traditional OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: Year 2000 Update for VB4 16-bit Editor
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 01 Nov 1999
    Product Details

    This report applies to:

    VB 4.0 (16-bit)- Standard, Professional, Enterprise, Working Model

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year

    How the product runtime handles dates:

    Visual Basic 4.0 (16-bit) converts 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.

    Two-digit shortcut handling:

    During the Visual Basic 4.0 development cycle, a new rule for two-digit date-handling was developed. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.

    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

    Other design time issues to be aware of when using this tool:

    Visual Basic 4 16bit has a system date dependant issue in its code editor. Date literals (e.g. d = #10/7/97#) in the 1900s are truncated to 2-digit years. If a VB4-16 project is loaded on a machine that has the system clock set to a date greater than or equal to (>=) the year 2000, this date is re-parsed as belonging to the 2000’s (e.g. d = #10/7/2097#). Additionally, with the system clock set greater than or equal to (>=) the year 2000, no date from the 1900’s can effectively be represented as a date literal.

    NOTE: This specification applies ONLY TO THE DESIGN ENVIRONMENT. Visual Basic 4.0-16 bit compiled applications are not affected, only the text-based source code is. This is a very important distinction that must be understood to understand the relevance of this issue to developers (i.e. it is only of interest to those people developing or maintaining the code for VB4-16 bit applications, not for end-users who are using VB4-16bit developed applications). Other versions of the Visual Basic programming language are not subject to this behavior.

    Example #1: Editing existing code after the system clock as passed 1/1/2000

    System date: 10/7/98, user enters the code:

    Function CalculatePorfolioPerformaceSinceStart

    ‘User entered #10/7/1998#, was parsed by VB to 2 digits

    Const PORFOLIO_START_DATE = #10/7/98#

    End Function

    The year 2000 has now come and the developer is asked to update the code or add a feature. The developer loads the code in Visual Basic 4.0 16-bit and makes the change/addition.

    The problem: This date has been re-parsed and automatically been changed to:

    Function CalculatePorfolioPerformaceSinceStart

    Const PORFOLIO_START_DATE = #10/7/2098#

    End Function

    Example #2: Entering a 19xx date after the system clock has passed 1/1/2000

    The year is 2000. A VB4-16 developer attempts to enter a date from the 1900s:

    ‘User entered #10/7/1998# The year is parsed into 1998.

    Const PORFOLIO_START_DATE = #10/7/98#

    The developer saves his project.

    Then re-loads his project.

    The issue: The date has been changed to:

    Const PORFOLIO_START_DATE = #10/7/2098#

    Microsoft has provided an update for the VB4-16 code editor

    This update will provide two operations:

    1. When a date constant is entered into the code window by the developer, it will be displayed and saved as a four-digit year, e.g Const SOME_DATE = #10/7/1998#.
    2. When existing code is loaded that has 2-digit date constants, they will be interpreted and displayed as 4-digit years in 19xx. When the code is re-saved, it will be saved using 4-digit years, e.g. Const SOME_DATE = #10/7/98# becomes SOME_DATE = #10/7/1998#

    Thus, with this update, the VB4-16 bit editor will be able to handle date literals as developer code after the year 2000. This update is contained in an updated VBA2.DLL that will be released in April 1999. Again, this issue does not affect end users or their Visual Basic 4-16bit applications, only the Visual Basic 4 development environment.

    Please visit http://msdn.microsoft.com/vbasic/downloads/vb4-y2k.asp for more information and to download the update.

    Testing guidelines and recommendations:

    The following code evaluates the data entered into a textbox named txtDate when the user clicks cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic.

    Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.

    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:

    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  4.0   (English)

    Product Summary
    Product: Visual Basic (16-bit) Version: 4.0 Category:Compliant*#
    Language: English OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: Year 2000 Update for VB4 16-bit Editor
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 01 Nov 1999
    Product Details

    This report applies to:

    VB 4.0 (16-bit)- Standard, Professional, Enterprise, Working Model

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year

    How the product runtime handles dates:

    Visual Basic 4.0 (16-bit) converts 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.

    Two-digit shortcut handling:

    During the Visual Basic 4.0 development cycle, a new rule for two-digit date-handling was developed. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.

    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of when using this tool:

    Visual Basic 4 16bit has a system date dependant issue in its code editor. Date literals (e.g. d = #10/7/97#) in the 1900s are truncated to 2-digit years. If a VB4-16 project is loaded on a machine that has the system clock set to a date greater than or equal to (>=) the year 2000, this date is re-parsed as belonging to the 2000’s (e.g. d = #10/7/2097#). Additionally, with the system clock set greater than or equal to (>=) the year 2000, no date from the 1900’s can effectively be represented as a date literal.

    NOTE: This specification applies ONLY TO THE DESIGN ENVIRONMENT. Visual Basic 4.0-16 bit compiled applications are not affected, only the text-based source code is. This is a very important distinction that must be understood to understand the relevance of this issue to developers (i.e. it is only of interest to those people developing or maintaining the code for VB4-16 bit applications, not for end-users who are using VB4-16bit developed applications). Other versions of the Visual Basic programming language are not subject to this behavior.

    Example #1: Editing existing code after the system clock as passed 1/1/2000

    System date: 10/7/98, user enters the code:

    Function CalculatePorfolioPerformaceSinceStart

    ‘User entered #10/7/1998#, was parsed by VB to 2 digits

    Const PORFOLIO_START_DATE = #10/7/98#

    End Function

    The year 2000 has now come and the developer is asked to update the code or add a feature. The developer loads the code in Visual Basic 4.0 16-bit and makes the change/addition.

    The problem: This date has been re-parsed and automatically been changed to:

    Function CalculatePorfolioPerformaceSinceStart

    Const PORFOLIO_START_DATE = #10/7/2098#

    End Function

    Example #2: Entering a 19xx date after the system clock has passed 1/1/2000

    The year is 2000. A VB4-16 developer attempts to enter a date from the 1900s:

    ‘User entered #10/7/1998# The year is parsed into 1998.

    Const PORFOLIO_START_DATE = #10/7/98#

    The developer saves his project.

    Then re-loads his project.

    The issue: The date has been changed to:

    Const PORFOLIO_START_DATE = #10/7/2098#

    Microsoft has provided an update for the VB4-16 code editor

    This update will provide two operations:

    1. When a date constant is entered into the code window by the developer, it will be displayed and saved as a four-digit year, e.g Const SOME_DATE = #10/7/1998#.
    2. When existing code is loaded that has 2-digit date constants, they will be interpreted and displayed as 4-digit years in 19xx. When the code is re-saved, it will be saved using 4-digit years, e.g. Const SOME_DATE = #10/7/98# becomes SOME_DATE = #10/7/1998#

    Thus, with this update, the VB4-16 bit editor will be able to handle date literals as developer code after the year 2000. This update is contained in an updated VBA2.DLL that will be released in April 1999. Again, this issue does not affect end users or their Visual Basic 4-16bit applications, only the Visual Basic 4 development environment.

    Please visit http://msdn.microsoft.com/vbasic/downloads/vb4-y2k.asp for more information and to download the update.

    Testing guidelines and recommendations:

    The following code evaluates the data entered into a textbox named txtDate when the user clicks cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic.

    Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.

    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:

    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  4.0   (French)

    Product Summary
    Product: Visual Basic (16-bit) Version: 4.0 Category:Compliant*#
    Language: French OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: Year 2000 Update for VB4 16-bit Editor
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 01 Nov 1999
    Product Details

    This report applies to:

    VB 4.0 (16-bit)- Standard, Professional, Enterprise, Working Model

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year

    How the product runtime handles dates:

    Visual Basic 4.0 (16-bit) converts 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.

    Two-digit shortcut handling:

    During the Visual Basic 4.0 development cycle, a new rule for two-digit date-handling was developed. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.

    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of when using this tool:

    Visual Basic 4 16bit has a system date dependant issue in its code editor. Date literals (e.g. d = #10/7/97#) in the 1900s are truncated to 2-digit years. If a VB4-16 project is loaded on a machine that has the system clock set to a date greater than or equal to (>=) the year 2000, this date is re-parsed as belonging to the 2000’s (e.g. d = #10/7/2097#). Additionally, with the system clock set greater than or equal to (>=) the year 2000, no date from the 1900’s can effectively be represented as a date literal.

    NOTE: This specification applies ONLY TO THE DESIGN ENVIRONMENT. Visual Basic 4.0-16 bit compiled applications are not affected, only the text-based source code is. This is a very important distinction that must be understood to understand the relevance of this issue to developers (i.e. it is only of interest to those people developing or maintaining the code for VB4-16 bit applications, not for end-users who are using VB4-16bit developed applications). Other versions of the Visual Basic programming language are not subject to this behavior.

    Example #1: Editing existing code after the system clock as passed 1/1/2000

    System date: 10/7/98, user enters the code:

    Function CalculatePorfolioPerformaceSinceStart

    ‘User entered #10/7/1998#, was parsed by VB to 2 digits

    Const PORFOLIO_START_DATE = #10/7/98#

    End Function

    The year 2000 has now come and the developer is asked to update the code or add a feature. The developer loads the code in Visual Basic 4.0 16-bit and makes the change/addition.

    The problem: This date has been re-parsed and automatically been changed to:

    Function CalculatePorfolioPerformaceSinceStart

    Const PORFOLIO_START_DATE = #10/7/2098#

    End Function

    Example #2: Entering a 19xx date after the system clock has passed 1/1/2000

    The year is 2000. A VB4-16 developer attempts to enter a date from the 1900s:

    ‘User entered #10/7/1998# The year is parsed into 1998.

    Const PORFOLIO_START_DATE = #10/7/98#

    The developer saves his project.

    Then re-loads his project.

    The issue: The date has been changed to:

    Const PORFOLIO_START_DATE = #10/7/2098#

    Microsoft has provided an update for the VB4-16 code editor

    This update will provide two operations:

    1. When a date constant is entered into the code window by the developer, it will be displayed and saved as a four-digit year, e.g Const SOME_DATE = #10/7/1998#.
    2. When existing code is loaded that has 2-digit date constants, they will be interpreted and displayed as 4-digit years in 19xx. When the code is re-saved, it will be saved using 4-digit years, e.g. Const SOME_DATE = #10/7/98# becomes SOME_DATE = #10/7/1998#

    Thus, with this update, the VB4-16 bit editor will be able to handle date literals as developer code after the year 2000. This update is contained in an updated VBA2.DLL that will be released in April 1999. Again, this issue does not affect end users or their Visual Basic 4-16bit applications, only the Visual Basic 4 development environment.

    Please visit http://msdn.microsoft.com/vbasic/downloads/vb4-y2k.asp for more information and to download the update.

    Testing guidelines and recommendations:

    The following code evaluates the data entered into a textbox named txtDate when the user clicks cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic.

    Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.

    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:

    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  4.0   (German)

    Product Summary
    Product: Visual Basic (16-bit) Version: 4.0 Category:Compliant*#
    Language: German OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: Year 2000 Update for VB4 16-bit Editor
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 01 Nov 1999
    Product Details

    This report applies to:

    VB 4.0 (16-bit)- Standard, Professional, Enterprise, Working Model

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year

    How the product runtime handles dates:

    Visual Basic 4.0 (16-bit) converts 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.

    Two-digit shortcut handling:

    During the Visual Basic 4.0 development cycle, a new rule for two-digit date-handling was developed. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.

    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of when using this tool:

    Visual Basic 4 16bit has a system date dependant issue in its code editor. Date literals (e.g. d = #10/7/97#) in the 1900s are truncated to 2-digit years. If a VB4-16 project is loaded on a machine that has the system clock set to a date greater than or equal to (>=) the year 2000, this date is re-parsed as belonging to the 2000’s (e.g. d = #10/7/2097#). Additionally, with the system clock set greater than or equal to (>=) the year 2000, no date from the 1900’s can effectively be represented as a date literal.

    NOTE: This specification applies ONLY TO THE DESIGN ENVIRONMENT. Visual Basic 4.0-16 bit compiled applications are not affected, only the text-based source code is. This is a very important distinction that must be understood to understand the relevance of this issue to developers (i.e. it is only of interest to those people developing or maintaining the code for VB4-16 bit applications, not for end-users who are using VB4-16bit developed applications). Other versions of the Visual Basic programming language are not subject to this behavior.

    Example #1: Editing existing code after the system clock as passed 1/1/2000

    System date: 10/7/98, user enters the code:

    Function CalculatePorfolioPerformaceSinceStart

    ‘User entered #10/7/1998#, was parsed by VB to 2 digits

    Const PORFOLIO_START_DATE = #10/7/98#

    End Function

    The year 2000 has now come and the developer is asked to update the code or add a feature. The developer loads the code in Visual Basic 4.0 16-bit and makes the change/addition.

    The problem: This date has been re-parsed and automatically been changed to:

    Function CalculatePorfolioPerformaceSinceStart

    Const PORFOLIO_START_DATE = #10/7/2098#

    End Function

    Example #2: Entering a 19xx date after the system clock has passed 1/1/2000

    The year is 2000. A VB4-16 developer attempts to enter a date from the 1900s:

    ‘User entered #10/7/1998# The year is parsed into 1998.

    Const PORFOLIO_START_DATE = #10/7/98#

    The developer saves his project.

    Then re-loads his project.

    The issue: The date has been changed to:

    Const PORFOLIO_START_DATE = #10/7/2098#

    Microsoft has provided an update for the VB4-16 code editor

    This update will provide two operations:

    1. When a date constant is entered into the code window by the developer, it will be displayed and saved as a four-digit year, e.g Const SOME_DATE = #10/7/1998#.
    2. When existing code is loaded that has 2-digit date constants, they will be interpreted and displayed as 4-digit years in 19xx. When the code is re-saved, it will be saved using 4-digit years, e.g. Const SOME_DATE = #10/7/98# becomes SOME_DATE = #10/7/1998#

    Thus, with this update, the VB4-16 bit editor will be able to handle date literals as developer code after the year 2000. This update is contained in an updated VBA2.DLL that will be released in April 1999. Again, this issue does not affect end users or their Visual Basic 4-16bit applications, only the Visual Basic 4 development environment.

    Please visit http://msdn.microsoft.com/vbasic/downloads/vb4-y2k.asp for more information and to download the update.

    Testing guidelines and recommendations:

    The following code evaluates the data entered into a textbox named txtDate when the user clicks cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic.

    Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.

    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:

    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  4.0   (Italian)

    Product Summary
    Product: Visual Basic (16-bit) Version: 4.0 Category:Compliant*#
    Language: Italian OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: Year 2000 Update for VB4 16-bit Editor
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 01 Nov 1999
    Product Details

    This report applies to:

    VB 4.0 (16-bit)- Standard, Professional, Enterprise, Working Model

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year

    How the product runtime handles dates:

    Visual Basic 4.0 (16-bit) converts 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.

    Two-digit shortcut handling:

    During the Visual Basic 4.0 development cycle, a new rule for two-digit date-handling was developed. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.

    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of when using this tool:

    Visual Basic 4 16bit has a system date dependant issue in its code editor. Date literals (e.g. d = #10/7/97#) in the 1900s are truncated to 2-digit years. If a VB4-16 project is loaded on a machine that has the system clock set to a date greater than or equal to (>=) the year 2000, this date is re-parsed as belonging to the 2000’s (e.g. d = #10/7/2097#). Additionally, with the system clock set greater than or equal to (>=) the year 2000, no date from the 1900’s can effectively be represented as a date literal.

    NOTE: This specification applies ONLY TO THE DESIGN ENVIRONMENT. Visual Basic 4.0-16 bit compiled applications are not affected, only the text-based source code is. This is a very important distinction that must be understood to understand the relevance of this issue to developers (i.e. it is only of interest to those people developing or maintaining the code for VB4-16 bit applications, not for end-users who are using VB4-16bit developed applications). Other versions of the Visual Basic programming language are not subject to this behavior.

    Example #1: Editing existing code after the system clock as passed 1/1/2000

    System date: 10/7/98, user enters the code:

    Function CalculatePorfolioPerformaceSinceStart

    ‘User entered #10/7/1998#, was parsed by VB to 2 digits

    Const PORFOLIO_START_DATE = #10/7/98#

    End Function

    The year 2000 has now come and the developer is asked to update the code or add a feature. The developer loads the code in Visual Basic 4.0 16-bit and makes the change/addition.

    The problem: This date has been re-parsed and automatically been changed to:

    Function CalculatePorfolioPerformaceSinceStart

    Const PORFOLIO_START_DATE = #10/7/2098#

    End Function

    Example #2: Entering a 19xx date after the system clock has passed 1/1/2000

    The year is 2000. A VB4-16 developer attempts to enter a date from the 1900s:

    ‘User entered #10/7/1998# The year is parsed into 1998.

    Const PORFOLIO_START_DATE = #10/7/98#

    The developer saves his project.

    Then re-loads his project.

    The issue: The date has been changed to:

    Const PORFOLIO_START_DATE = #10/7/2098#

    Microsoft has provided an update for the VB4-16 code editor

    This update will provide two operations:

    1. When a date constant is entered into the code window by the developer, it will be displayed and saved as a four-digit year, e.g Const SOME_DATE = #10/7/1998#.
    2. When existing code is loaded that has 2-digit date constants, they will be interpreted and displayed as 4-digit years in 19xx. When the code is re-saved, it will be saved using 4-digit years, e.g. Const SOME_DATE = #10/7/98# becomes SOME_DATE = #10/7/1998#

    Thus, with this update, the VB4-16 bit editor will be able to handle date literals as developer code after the year 2000. This update is contained in an updated VBA2.DLL that will be released in April 1999. Again, this issue does not affect end users or their Visual Basic 4-16bit applications, only the Visual Basic 4 development environment.

    Please visit http://msdn.microsoft.com/vbasic/downloads/vb4-y2k.asp for more information and to download the update.

    Testing guidelines and recommendations:

    The following code evaluates the data entered into a textbox named txtDate when the user clicks cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic.

    Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.

    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:

    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  4.0   (Japanese)

    Product Summary
    Product: Visual Basic (16-bit) Version: 4.0 Category:Compliant*#
    Language: Japanese OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: Year 2000 Update for VB4 16-bit Editor
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 01 Nov 1999
    Product Details

    This report applies to:

    VB 4.0 (16-bit)- Standard, Professional, Enterprise, Working Model

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year

    How the product runtime handles dates:

    Visual Basic 4.0 (16-bit) converts 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.

    Two-digit shortcut handling:

    During the Visual Basic 4.0 development cycle, a new rule for two-digit date-handling was developed. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.

    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of when using this tool:

    Visual Basic 4 16bit has a system date dependant issue in its code editor. Date literals (e.g. d = #10/7/97#) in the 1900s are truncated to 2-digit years. If a VB4-16 project is loaded on a machine that has the system clock set to a date greater than or equal to (>=) the year 2000, this date is re-parsed as belonging to the 2000’s (e.g. d = #10/7/2097#). Additionally, with the system clock set greater than or equal to (>=) the year 2000, no date from the 1900’s can effectively be represented as a date literal.

    NOTE: This specification applies ONLY TO THE DESIGN ENVIRONMENT. Visual Basic 4.0-16 bit compiled applications are not affected, only the text-based source code is. This is a very important distinction that must be understood to understand the relevance of this issue to developers (i.e. it is only of interest to those people developing or maintaining the code for VB4-16 bit applications, not for end-users who are using VB4-16bit developed applications). Other versions of the Visual Basic programming language are not subject to this behavior.

    Example #1: Editing existing code after the system clock as passed 1/1/2000

    System date: 10/7/98, user enters the code:

    Function CalculatePorfolioPerformaceSinceStart

    ‘User entered #10/7/1998#, was parsed by VB to 2 digits

    Const PORFOLIO_START_DATE = #10/7/98#

    End Function

    The year 2000 has now come and the developer is asked to update the code or add a feature. The developer loads the code in Visual Basic 4.0 16-bit and makes the change/addition.

    The problem: This date has been re-parsed and automatically been changed to:

    Function CalculatePorfolioPerformaceSinceStart

    Const PORFOLIO_START_DATE = #10/7/2098#

    End Function

    Example #2: Entering a 19xx date after the system clock has passed 1/1/2000

    The year is 2000. A VB4-16 developer attempts to enter a date from the 1900s:

    ‘User entered #10/7/1998# The year is parsed into 1998.

    Const PORFOLIO_START_DATE = #10/7/98#

    The developer saves his project.

    Then re-loads his project.

    The issue: The date has been changed to:

    Const PORFOLIO_START_DATE = #10/7/2098#

    Microsoft has provided an update for the VB4-16 code editor

    This update will provide two operations:

    1. When a date constant is entered into the code window by the developer, it will be displayed and saved as a four-digit year, e.g Const SOME_DATE = #10/7/1998#.
    2. When existing code is loaded that has 2-digit date constants, they will be interpreted and displayed as 4-digit years in 19xx. When the code is re-saved, it will be saved using 4-digit years, e.g. Const SOME_DATE = #10/7/98# becomes SOME_DATE = #10/7/1998#

    Thus, with this update, the VB4-16 bit editor will be able to handle date literals as developer code after the year 2000. This update is contained in an updated VBA2.DLL that will be released in April 1999. Again, this issue does not affect end users or their Visual Basic 4-16bit applications, only the Visual Basic 4 development environment.

    Please visit http://msdn.microsoft.com/vbasic/downloads/vb4-y2k.asp for more information and to download the update.

    Testing guidelines and recommendations:

    The following code evaluates the data entered into a textbox named txtDate when the user clicks cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic.

    Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.

    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:

    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (16-bit)  4.0   (Spanish)

    Product Summary
    Product: Visual Basic (16-bit) Version: 4.0 Category:Compliant*#
    Language: Spanish OS: 16-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: Year 2000 Update for VB4 16-bit Editor
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + software updates, Windows NT 3.51 Service Pack 5 + software updates, Windows 95, Windows 98 with software updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 01 Nov 1999
    Product Details

    This report applies to:

    VB 4.0 (16-bit)- Standard, Professional, Enterprise, Working Model

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1/1/2000 using defaults for 2-digit year

    How the product runtime handles dates:

    Visual Basic 4.0 (16-bit) converts 2-digit years to the century of the current system date. Depending on the function used, Visual Basic converts the date based on defaults in either the 16-bit Automation libraries or the runtime library. The defaults in the 16-bit Automation libraries have not been modified since Visual Basic 4.0 released. Therefore the behavior is consistent regardless of which date function is used.

    Two-digit shortcut handling:

    During the Visual Basic 4.0 development cycle, a new rule for two-digit date-handling was developed. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.

    Visual Basic 4.0 was developed with this interoperability in mind and began to rely on the OLE Automation libraries to convert 2-digit years to 4-digit years in most cases. The exception to the rule is the DateSerial function that was implemented in the Visual Basic runtime library because Visual Basic required more functionality than the OLE Automation library could provide at that time.

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of when using this tool:

    Visual Basic 4 16bit has a system date dependant issue in its code editor. Date literals (e.g. d = #10/7/97#) in the 1900s are truncated to 2-digit years. If a VB4-16 project is loaded on a machine that has the system clock set to a date greater than or equal to (>=) the year 2000, this date is re-parsed as belonging to the 2000’s (e.g. d = #10/7/2097#). Additionally, with the system clock set greater than or equal to (>=) the year 2000, no date from the 1900’s can effectively be represented as a date literal.

    NOTE: This specification applies ONLY TO THE DESIGN ENVIRONMENT. Visual Basic 4.0-16 bit compiled applications are not affected, only the text-based source code is. This is a very important distinction that must be understood to understand the relevance of this issue to developers (i.e. it is only of interest to those people developing or maintaining the code for VB4-16 bit applications, not for end-users who are using VB4-16bit developed applications). Other versions of the Visual Basic programming language are not subject to this behavior.

    Example #1: Editing existing code after the system clock as passed 1/1/2000

    System date: 10/7/98, user enters the code:

    Function CalculatePorfolioPerformaceSinceStart

    ‘User entered #10/7/1998#, was parsed by VB to 2 digits

    Const PORFOLIO_START_DATE = #10/7/98#

    End Function

    The year 2000 has now come and the developer is asked to update the code or add a feature. The developer loads the code in Visual Basic 4.0 16-bit and makes the change/addition.

    The problem: This date has been re-parsed and automatically been changed to:

    Function CalculatePorfolioPerformaceSinceStart

    Const PORFOLIO_START_DATE = #10/7/2098#

    End Function

    Example #2: Entering a 19xx date after the system clock has passed 1/1/2000

    The year is 2000. A VB4-16 developer attempts to enter a date from the 1900s:

    ‘User entered #10/7/1998# The year is parsed into 1998.

    Const PORFOLIO_START_DATE = #10/7/98#

    The developer saves his project.

    Then re-loads his project.

    The issue: The date has been changed to:

    Const PORFOLIO_START_DATE = #10/7/2098#

    Microsoft has provided an update for the VB4-16 code editor

    This update will provide two operations:

    1. When a date constant is entered into the code window by the developer, it will be displayed and saved as a four-digit year, e.g Const SOME_DATE = #10/7/1998#.
    2. When existing code is loaded that has 2-digit date constants, they will be interpreted and displayed as 4-digit years in 19xx. When the code is re-saved, it will be saved using 4-digit years, e.g. Const SOME_DATE = #10/7/98# becomes SOME_DATE = #10/7/1998#

    Thus, with this update, the VB4-16 bit editor will be able to handle date literals as developer code after the year 2000. This update is contained in an updated VBA2.DLL that will be released in April 1999. Again, this issue does not affect end users or their Visual Basic 4-16bit applications, only the Visual Basic 4 development environment.

    Please visit http://msdn.microsoft.com/vbasic/downloads/vb4-y2k.asp for more information and to download the update.

    Testing guidelines and recommendations:

    The following code evaluates the data entered into a textbox named txtDate when the user clicks cmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic.

    Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.

    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:

    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  4.0   (Chinese - Traditional)

    Product Summary
    Product: Visual Basic (32-bit) Version: 4.0 Category:Compliant*#
    Language: Chinese - Traditional OS: 32-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + Year 2000Software Updates, Windows NT 3.51 Service Pack 5 + Year 2000 Software Updates, Windows 95, Windows 98 + Year 2000 Software Updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 28 Sep 1999
    Product Details

    This report applies to:

    VB 4.0 (32-bit)- Standard, Professional, Enterprise, Working Model

    Developing Year 2000 Compliant Software

    Operational Range for Data: System Dependent

    How the product runtime handles dates:

    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function which, converts the 2-digit years to the century of the current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted 2-digit years to the century of the current system date. Later 32-bit Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900’s (1930-1999).

    Two-digit shortcut handling:

    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.

    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.

    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    for more information.

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

    Other design time issues to be aware of when using this tool:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Testing guidelines and recommendations:

    The following code evaluates the data entered into a textbox named txtDate when the user clickscmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic.

    Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.

    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:

    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  4.0   (English)

    Product Summary
    Product: Visual Basic (32-bit) Version: 4.0 Category:Compliant*#
    Language: English OS: 32-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + Year 2000Software Updates, Windows NT 3.51 Service Pack 5 + Year 2000 Software Updates, Windows 95, Windows 98 + Year 2000 Software Updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 28 Sep 1999
    Product Details

    This report applies to:

    VB 4.0 (32-bit)- Standard, Professional, Enterprise, Working Model

    Developing Year 2000 Compliant Software

    Operational Range for Data: System Dependent

    How the product runtime handles dates:

    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function which, converts the 2-digit years to the century of the current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted 2-digit years to the century of the current system date. Later 32-bit Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900’s (1930-1999).

    Two-digit shortcut handling:

    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.

    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.

    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    for more information.

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

    Other design time issues to be aware of when using this tool:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Testing guidelines and recommendations:

    The following code evaluates the data entered into a textbox named txtDate when the user clickscmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic.

    Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.

    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:

    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  4.0   (French)

    Product Summary
    Product: Visual Basic (32-bit) Version: 4.0 Category:Compliant*#
    Language: French OS: 32-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + Year 2000Software Updates, Windows NT 3.51 Service Pack 5 + Year 2000 Software Updates, Windows 95, Windows 98 + Year 2000 Software Updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 28 Sep 1999
    Product Details

    This report applies to:

    VB 4.0 (32-bit)- Standard, Professional, Enterprise, Working Model

    Developing Year 2000 Compliant Software

    Operational Range for Data: System Dependent

    How the product runtime handles dates:

    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function which, converts the 2-digit years to the century of the current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted 2-digit years to the century of the current system date. Later 32-bit Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900’s (1930-1999).

    Two-digit shortcut handling:

    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.

    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.

    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    for more information.

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

    Other design time issues to be aware of when using this tool:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Testing guidelines and recommendations:

    The following code evaluates the data entered into a textbox named txtDate when the user clickscmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic.

    Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.

    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:

    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  4.0   (German)

    Product Summary
    Product: Visual Basic (32-bit) Version: 4.0 Category:Compliant*#
    Language: German OS: 32-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + Year 2000Software Updates, Windows NT 3.51 Service Pack 5 + Year 2000 Software Updates, Windows 95, Windows 98 + Year 2000 Software Updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 28 Sep 1999
    Product Details

    This report applies to:

    VB 4.0 (32-bit)- Standard, Professional, Enterprise, Working Model

    Developing Year 2000 Compliant Software

    Operational Range for Data: System Dependent

    How the product runtime handles dates:

    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function which, converts the 2-digit years to the century of the current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted 2-digit years to the century of the current system date. Later 32-bit Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900’s (1930-1999).

    Two-digit shortcut handling:

    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.

    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.

    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    for more information.

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

    Other design time issues to be aware of when using this tool:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Testing guidelines and recommendations:

    The following code evaluates the data entered into a textbox named txtDate when the user clickscmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic.

    Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.

    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:

    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  4.0   (Italian)

    Product Summary
    Product: Visual Basic (32-bit) Version: 4.0 Category:Compliant*#
    Language: Italian OS: 32-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + Year 2000Software Updates, Windows NT 3.51 Service Pack 5 + Year 2000 Software Updates, Windows 95, Windows 98 + Year 2000 Software Updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 28 Sep 1999
    Product Details

    This report applies to:

    VB 4.0 (32-bit)- Standard, Professional, Enterprise, Working Model

    Developing Year 2000 Compliant Software

    Operational Range for Data: System Dependent

    How the product runtime handles dates:

    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function which, converts the 2-digit years to the century of the current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted 2-digit years to the century of the current system date. Later 32-bit Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900’s (1930-1999).

    Two-digit shortcut handling:

    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.

    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.

    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    for more information.

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

    Other design time issues to be aware of when using this tool:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Testing guidelines and recommendations:

    The following code evaluates the data entered into a textbox named txtDate when the user clickscmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic.

    Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.

    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:

    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  4.0   (Japanese)

    Product Summary
    Product: Visual Basic (32-bit) Version: 4.0 Category:Compliant*#
    Language: Japanese OS: 32-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + Year 2000Software Updates, Windows NT 3.51 Service Pack 5 + Year 2000 Software Updates, Windows 95, Windows 98 + Year 2000 Software Updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 28 Sep 1999
    Product Details

    This report applies to:

    VB 4.0 (32-bit)- Standard, Professional, Enterprise, Working Model

    Developing Year 2000 Compliant Software

    Operational Range for Data: System Dependent

    How the product runtime handles dates:

    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function which, converts the 2-digit years to the century of the current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted 2-digit years to the century of the current system date. Later 32-bit Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900’s (1930-1999).

    Two-digit shortcut handling:

    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.

    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.

    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    for more information.

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

    Other design time issues to be aware of when using this tool:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Testing guidelines and recommendations:

    The following code evaluates the data entered into a textbox named txtDate when the user clickscmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic.

    Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.

    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:

    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  4.0   (Spanish)

    Product Summary
    Product: Visual Basic (32-bit) Version: 4.0 Category:Compliant*#
    Language: Spanish OS: 32-Bit Win Release Date: 01 Jan 1995
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: MS-DOS, Windows 3.x, Windows NT 4 Service Pack 4 + Year 2000Software Updates, Windows NT 3.51 Service Pack 5 + Year 2000 Software Updates, Windows 95, Windows 98 + Year 2000 Software Updates
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 28 Sep 1999
    Product Details

    This report applies to:

    VB 4.0 (32-bit)- Standard, Professional, Enterprise, Working Model

    Developing Year 2000 Compliant Software

    Operational Range for Data: System Dependent

    How the product runtime handles dates:

    Visual Basic 4.0 (32-bit) converts 2-digit years to 4-digit years based on the default in the Automation libraries except when using the DateSerial function which, converts the 2-digit years to the century of the current system date. The 32-bit Automation libraries (OleAut32.dll version 2.10) that shipped when Visual Basic 4.0 was released converted 2-digit years to the century of the current system date. Later 32-bit Automation libraries (OleAut32.dll version 2.20 and later) convert 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900’s (1930-1999).

    Two-digit shortcut handling:

    During the Visual Basic 4.0 development cycle, a new rule emerged. A 2-digit year would be converted to the current century of the system date. Thus, Year(Date("1/1/00")) would evaluate to the current century. This new rule was implemented in the OLE Automation libraries used by Visual Basic 4.0 and Visual Basic for Applications. The Visual Basic 4.0 runtime library also implements the rule for the DateSerial function.

    Microsoft changed the default in the OLE Automation (now simply Automation) libraries as of version 2.20.4049 of OleAut32.dll. This change does not affect 16-bit applications that rely on the Automation libraries, only 32-bit applications. Now, a 2-digit year between 00 and 29 (such as 17) is interpreted as 2017 while a 2-digit year between 30 and 99 (such as 72) is interpreted as 1972. The new Automation libraries provide the functionality that Visual Basic requires for the DateSerial function. Thus, Visual Basic 5.0 and subsequent releases no longer implement rules for the DateSerial function in their runtime libraries.

    The updated Automation library ships with Internet Explorer version 3.0 and later, Windows NT 3.51 Service Pack 5, Windows NT 4.0, Windows 95 OSR2, Office 97, Visual Basic 5.0 and other products.

    For additional information, please refer to Knowledge Base article Q162718

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    for more information.

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

    Other design time issues to be aware of when using this tool:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Testing guidelines and recommendations:

    The following code evaluates the data entered into a textbox named txtDate when the user clickscmdConvertDate. If the date contains a 2-digit year, the date is converted into a 4-digit year date according to the sample rule. The code then displays the initial date entered, the full year as converted by the code according to the sample rule, and the full year converted by the defaults native to Visual Basic.

    Finally, the date displayed in txtDate is converted to a non-ambiguous date with the appropriate 4-digit year.

    This code requires that dates are entered in the mm/dd/yy format, but it could easily be changed to handle a different date format:

    Private Sub cmdConvertDate_Click()
    Dim strYear As String
    Dim intSlash As Integer
    If IsDate(txtDate) or txtDate = "2/29/00" Then
    'Find first date separator.
    intSlash = InStr(txtDate, "/")
    If intSlash > 0 Then
    'Find second date separator.
    intSlash = InStr(intSlash + 1, txtDate, "/")
    If intSlash > 0 Then
    'Extract the year from the date.
    strYear = Mid(txtDate, intSlash + 1)
    If Len(strYear) = 2 Then
    If CInt(strYear) < 50 Then
    ' Less than 50: year = 20XX.
    strYear = "20" & strYear
    Else
    ' Greater than 50: year = 19XX.
    strYear = "19" & strYear
    End If
    End If
    MsgBox "Date Entered: " & txtDate
    MsgBox "Year (Our Rule): " & strYear
    MsgBox "Year (VB Default): " & Year(txtDate)
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Date not in expected format!"
    End If
    Else
    MsgBox "Not a valid date!"
    End If
    ' Clarify date in txtDate.
    txtDate.Text = Left(txtDate.Text, intSlash) & strYear
    End Sub

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  5.0   (Chinese - Simplified)

    Product Summary
    Product: Visual Basic (32-bit) Version: 5.0 Category:Compliant*#
    Language: Chinese - Simplified OS: 32-Bit Win Release Date: 01 Jan 1997
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), Windows 98 (plus Y2K updates), Year 2000 update for Internet Explorer 3.02, SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 25 Oct 1999
    Product Details

    This report applies to:

    VB 5.0- Learning, Professional, Enterprise

    Czech, Polish, Portuguese (Brazil), and Russian contain US Software.

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1930 through 2029 using two-digit shortcuts or user configurable

    How the product runtime handles dates:

    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) requires Visual Basic to interpret to what century the date corresponds.

    Two-digit shortcut handling:

    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900s. The product will function into the 21st century through the end of year 2030 in accordance with industry standard 100-year date windowing. Developers can modify this date window to their own needs as described in the Windows 98 control panel or as described in the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of:

    If the products or technologies listed below are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Fix

    Internet Explorer 3.02

    Year 2000 Update

    http://www.microsoft.com/windows/ie/download/windows.htm

    Internet Explorer 4.01

    SP1

    http://www.microsoft.com/ie

    SQL 6.5

    SP5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 SP2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    SP4

    http://www.microsoft.com/ntserver

    Note for Enterprise Edition Users

    Visual SourceSafe contains a small cosmetic display issue when using the history pre-dialog:

    1. In the History pre-dialog where users can specify a date range to do a history on ("show me the History between 1/1/97 and 2/24/2000), if users specify a date after the year 2000, it will be treated as a date in the 1900s. The same problem exists on the command line.

    2. The history pre-dialog in version 5.0 does not accept 4-digit years.

    The issues described above are cosmetic display problems. Data is stored correctly and clock rollover to the year 2000 will not cause data loss.

    The most restrictive structure Visual SourceSafe uses for dates is a long integer containing the number of seconds since January 1, 1970.

    Testing guidelines and recommendations:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  5.0   (Chinese - Traditional)

    Product Summary
    Product: Visual Basic (32-bit) Version: 5.0 Category:Compliant*#
    Language: Chinese - Traditional OS: 32-Bit Win Release Date: 01 Jan 1997
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), Windows 98 (plus Y2K updates), Year 2000 update for Internet Explorer 3.02, SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 25 Oct 1999
    Product Details

    This report applies to:

    VB 5.0- Learning, Professional, Enterprise

    Czech, Polish, Portuguese (Brazil), and Russian contain US Software.

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1930 through 2029 using two-digit shortcuts or user configurable

    How the product runtime handles dates:

    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) requires Visual Basic to interpret to what century the date corresponds.

    Two-digit shortcut handling:

    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900s. The product will function into the 21st century through the end of year 2030 in accordance with industry standard 100-year date windowing. Developers can modify this date window to their own needs as described in the Windows 98 control panel or as described in the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of:

    If the products or technologies listed below are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Fix

    Internet Explorer 3.02

    Year 2000 Update

    http://www.microsoft.com/windows/ie/download/windows.htm

    Internet Explorer 4.01

    SP1

    http://www.microsoft.com/ie

    SQL 6.5

    SP5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 SP2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    SP4

    http://www.microsoft.com/ntserver

    Note for Enterprise Edition Users

    Visual SourceSafe contains a small cosmetic display issue when using the history pre-dialog:

    1. In the History pre-dialog where users can specify a date range to do a history on ("show me the History between 1/1/97 and 2/24/2000), if users specify a date after the year 2000, it will be treated as a date in the 1900s. The same problem exists on the command line.

    2. The history pre-dialog in version 5.0 does not accept 4-digit years.

    The issues described above are cosmetic display problems. Data is stored correctly and clock rollover to the year 2000 will not cause data loss.

    The most restrictive structure Visual SourceSafe uses for dates is a long integer containing the number of seconds since January 1, 1970.

    Testing guidelines and recommendations:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  5.0   (Czech)

    Product Summary
    Product: Visual Basic (32-bit) Version: 5.0 Category:Compliant*#
    Language: Czech OS: 32-Bit Win Release Date: 01 Jan 1997
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), Windows 98 (plus Y2K updates), Year 2000 update for Internet Explorer 3.02, SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    VB 5.0- Learning, Professional, Enterprise

    Czech, Polish, Portuguese (Brazil), and Russian contain US Software.

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1930 through 2029 using two-digit shortcuts or user configurable

    How the product runtime handles dates:

    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) requires Visual Basic to interpret to what century the date corresponds.

    Two-digit shortcut handling:

    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900s. The product will function into the 21st century through the end of year 2030 in accordance with industry standard 100-year date windowing. Developers can modify this date window to their own needs as described in the Windows 98 control panel or as described in the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of:

    If the products or technologies listed below are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Fix

    Internet Explorer 3.02

    Year 2000 Update

    http://www.microsoft.com/windows/ie/download/windows.htm

    Internet Explorer 4.01

    SP1

    http://www.microsoft.com/ie

    SQL 6.5

    SP5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 SP2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    SP4

    http://www.microsoft.com/ntserver

    Note for Enterprise Edition Users

    Visual SourceSafe contains a small cosmetic display issue when using the history pre-dialog:

    1. In the History pre-dialog where users can specify a date range to do a history on ("show me the History between 1/1/97 and 2/24/2000), if users specify a date after the year 2000, it will be treated as a date in the 1900s. The same problem exists on the command line.

    2. The history pre-dialog in version 5.0 does not accept 4-digit years.

    The issues described above are cosmetic display problems. Data is stored correctly and clock rollover to the year 2000 will not cause data loss.

    The most restrictive structure Visual SourceSafe uses for dates is a long integer containing the number of seconds since January 1, 1970.

    Testing guidelines and recommendations:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  5.0   (English)

    Product Summary
    Product: Visual Basic (32-bit) Version: 5.0 Category:Compliant*#
    Language: English OS: 32-Bit Win Release Date: 01 Jan 1997
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), Windows 98 (plus Y2K updates), Year 2000 update for Internet Explorer 3.02, SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    VB 5.0- Learning, Professional, Enterprise

    Czech, Polish, Portuguese (Brazil), and Russian contain US Software.

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1930 through 2029 using two-digit shortcuts or user configurable

    How the product runtime handles dates:

    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) requires Visual Basic to interpret to what century the date corresponds.

    Two-digit shortcut handling:

    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900s. The product will function into the 21st century through the end of year 2030 in accordance with industry standard 100-year date windowing. Developers can modify this date window to their own needs as described in the Windows 98 control panel or as described in the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of:

    If the products or technologies listed below are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Fix

    Internet Explorer 3.02

    Year 2000 Update

    http://www.microsoft.com/windows/ie/download/windows.htm

    Internet Explorer 4.01

    SP1

    http://www.microsoft.com/ie

    SQL 6.5

    SP5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 SP2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    SP4

    http://www.microsoft.com/ntserver

    Note for Enterprise Edition Users

    Visual SourceSafe contains a small cosmetic display issue when using the history pre-dialog:

    1. In the History pre-dialog where users can specify a date range to do a history on ("show me the History between 1/1/97 and 2/24/2000), if users specify a date after the year 2000, it will be treated as a date in the 1900s. The same problem exists on the command line.

    2. The history pre-dialog in version 5.0 does not accept 4-digit years.

    The issues described above are cosmetic display problems. Data is stored correctly and clock rollover to the year 2000 will not cause data loss.

    The most restrictive structure Visual SourceSafe uses for dates is a long integer containing the number of seconds since January 1, 1970.

    Testing guidelines and recommendations:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  5.0   (French)

    Product Summary
    Product: Visual Basic (32-bit) Version: 5.0 Category:Compliant*#
    Language: French OS: 32-Bit Win Release Date: 01 Jan 1997
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), Windows 98 (plus Y2K updates), Year 2000 update for Internet Explorer 3.02, SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    VB 5.0- Learning, Professional, Enterprise

    Czech, Polish, Portuguese (Brazil), and Russian contain US Software.

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1930 through 2029 using two-digit shortcuts or user configurable

    How the product runtime handles dates:

    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) requires Visual Basic to interpret to what century the date corresponds.

    Two-digit shortcut handling:

    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900s. The product will function into the 21st century through the end of year 2030 in accordance with industry standard 100-year date windowing. Developers can modify this date window to their own needs as described in the Windows 98 control panel or as described in the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of:

    If the products or technologies listed below are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Fix

    Internet Explorer 3.02

    Year 2000 Update

    http://www.microsoft.com/windows/ie/download/windows.htm

    Internet Explorer 4.01

    SP1

    http://www.microsoft.com/ie

    SQL 6.5

    SP5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 SP2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    SP4

    http://www.microsoft.com/ntserver

    Note for Enterprise Edition Users

    Visual SourceSafe contains a small cosmetic display issue when using the history pre-dialog:

    1. In the History pre-dialog where users can specify a date range to do a history on ("show me the History between 1/1/97 and 2/24/2000), if users specify a date after the year 2000, it will be treated as a date in the 1900s. The same problem exists on the command line.

    2. The history pre-dialog in version 5.0 does not accept 4-digit years.

    The issues described above are cosmetic display problems. Data is stored correctly and clock rollover to the year 2000 will not cause data loss.

    The most restrictive structure Visual SourceSafe uses for dates is a long integer containing the number of seconds since January 1, 1970.

    Testing guidelines and recommendations:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  5.0   (German)

    Product Summary
    Product: Visual Basic (32-bit) Version: 5.0 Category:Compliant*#
    Language: German OS: 32-Bit Win Release Date: 01 Jan 1997
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), Windows 98 (plus Y2K updates), Year 2000 update for Internet Explorer 3.02, SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    VB 5.0- Learning, Professional, Enterprise

    Czech, Polish, Portuguese (Brazil), and Russian contain US Software.

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1930 through 2029 using two-digit shortcuts or user configurable

    How the product runtime handles dates:

    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) requires Visual Basic to interpret to what century the date corresponds.

    Two-digit shortcut handling:

    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900s. The product will function into the 21st century through the end of year 2030 in accordance with industry standard 100-year date windowing. Developers can modify this date window to their own needs as described in the Windows 98 control panel or as described in the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of:

    If the products or technologies listed below are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Fix

    Internet Explorer 3.02

    Year 2000 Update

    http://www.microsoft.com/windows/ie/download/windows.htm

    Internet Explorer 4.01

    SP1

    http://www.microsoft.com/ie

    SQL 6.5

    SP5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 SP2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    SP4

    http://www.microsoft.com/ntserver

    Note for Enterprise Edition Users

    Visual SourceSafe contains a small cosmetic display issue when using the history pre-dialog:

    1. In the History pre-dialog where users can specify a date range to do a history on ("show me the History between 1/1/97 and 2/24/2000), if users specify a date after the year 2000, it will be treated as a date in the 1900s. The same problem exists on the command line.

    2. The history pre-dialog in version 5.0 does not accept 4-digit years.

    The issues described above are cosmetic display problems. Data is stored correctly and clock rollover to the year 2000 will not cause data loss.

    The most restrictive structure Visual SourceSafe uses for dates is a long integer containing the number of seconds since January 1, 1970.

    Testing guidelines and recommendations:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  5.0   (Italian)

    Product Summary
    Product: Visual Basic (32-bit) Version: 5.0 Category:Compliant*#
    Language: Italian OS: 32-Bit Win Release Date: 01 Jan 1997
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), Windows 98 (plus Y2K updates), Year 2000 update for Internet Explorer 3.02, SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    VB 5.0- Learning, Professional, Enterprise

    Czech, Polish, Portuguese (Brazil), and Russian contain US Software.

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1930 through 2029 using two-digit shortcuts or user configurable

    How the product runtime handles dates:

    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) requires Visual Basic to interpret to what century the date corresponds.

    Two-digit shortcut handling:

    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900s. The product will function into the 21st century through the end of year 2030 in accordance with industry standard 100-year date windowing. Developers can modify this date window to their own needs as described in the Windows 98 control panel or as described in the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of:

    If the products or technologies listed below are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Fix

    Internet Explorer 3.02

    Year 2000 Update

    http://www.microsoft.com/windows/ie/download/windows.htm

    Internet Explorer 4.01

    SP1

    http://www.microsoft.com/ie

    SQL 6.5

    SP5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 SP2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    SP4

    http://www.microsoft.com/ntserver

    Note for Enterprise Edition Users

    Visual SourceSafe contains a small cosmetic display issue when using the history pre-dialog:

    1. In the History pre-dialog where users can specify a date range to do a history on ("show me the History between 1/1/97 and 2/24/2000), if users specify a date after the year 2000, it will be treated as a date in the 1900s. The same problem exists on the command line.

    2. The history pre-dialog in version 5.0 does not accept 4-digit years.

    The issues described above are cosmetic display problems. Data is stored correctly and clock rollover to the year 2000 will not cause data loss.

    The most restrictive structure Visual SourceSafe uses for dates is a long integer containing the number of seconds since January 1, 1970.

    Testing guidelines and recommendations:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  5.0   (Japanese)

    Product Summary
    Product: Visual Basic (32-bit) Version: 5.0 Category:Compliant*#
    Language: Japanese OS: 32-Bit Win Release Date: 01 Jan 1997
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), Windows 98 (plus Y2K updates), Year 2000 update for Internet Explorer 3.02, SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    VB 5.0- Learning, Professional, Enterprise

    Czech, Polish, Portuguese (Brazil), and Russian contain US Software.

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1930 through 2029 using two-digit shortcuts or user configurable

    How the product runtime handles dates:

    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) requires Visual Basic to interpret to what century the date corresponds.

    Two-digit shortcut handling:

    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900s. The product will function into the 21st century through the end of year 2030 in accordance with industry standard 100-year date windowing. Developers can modify this date window to their own needs as described in the Windows 98 control panel or as described in the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of:

    If the products or technologies listed below are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Fix

    Internet Explorer 3.02

    Year 2000 Update

    http://www.microsoft.com/windows/ie/download/windows.htm

    Internet Explorer 4.01

    SP1

    http://www.microsoft.com/ie

    SQL 6.5

    SP5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 SP2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    SP4

    http://www.microsoft.com/ntserver

    Note for Enterprise Edition Users

    Visual SourceSafe contains a small cosmetic display issue when using the history pre-dialog:

    1. In the History pre-dialog where users can specify a date range to do a history on ("show me the History between 1/1/97 and 2/24/2000), if users specify a date after the year 2000, it will be treated as a date in the 1900s. The same problem exists on the command line.

    2. The history pre-dialog in version 5.0 does not accept 4-digit years.

    The issues described above are cosmetic display problems. Data is stored correctly and clock rollover to the year 2000 will not cause data loss.

    The most restrictive structure Visual SourceSafe uses for dates is a long integer containing the number of seconds since January 1, 1970.

    Testing guidelines and recommendations:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  5.0   (Korean)

    Product Summary
    Product: Visual Basic (32-bit) Version: 5.0 Category:Compliant*#
    Language: Korean OS: 32-Bit Win Release Date: 01 Jan 1997
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), Windows 98 (plus Y2K updates), Year 2000 update for Internet Explorer 3.02, SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    VB 5.0- Learning, Professional, Enterprise

    Czech, Polish, Portuguese (Brazil), and Russian contain US Software.

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1930 through 2029 using two-digit shortcuts or user configurable

    How the product runtime handles dates:

    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) requires Visual Basic to interpret to what century the date corresponds.

    Two-digit shortcut handling:

    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900s. The product will function into the 21st century through the end of year 2030 in accordance with industry standard 100-year date windowing. Developers can modify this date window to their own needs as described in the Windows 98 control panel or as described in the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of:

    If the products or technologies listed below are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Fix

    Internet Explorer 3.02

    Year 2000 Update

    http://www.microsoft.com/windows/ie/download/windows.htm

    Internet Explorer 4.01

    SP1

    http://www.microsoft.com/ie

    SQL 6.5

    SP5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 SP2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    SP4

    http://www.microsoft.com/ntserver

    Note for Enterprise Edition Users

    Visual SourceSafe contains a small cosmetic display issue when using the history pre-dialog:

    1. In the History pre-dialog where users can specify a date range to do a history on ("show me the History between 1/1/97 and 2/24/2000), if users specify a date after the year 2000, it will be treated as a date in the 1900s. The same problem exists on the command line.

    2. The history pre-dialog in version 5.0 does not accept 4-digit years.

    The issues described above are cosmetic display problems. Data is stored correctly and clock rollover to the year 2000 will not cause data loss.

    The most restrictive structure Visual SourceSafe uses for dates is a long integer containing the number of seconds since January 1, 1970.

    Testing guidelines and recommendations:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  5.0   (Polish)

    Product Summary
    Product: Visual Basic (32-bit) Version: 5.0 Category:Compliant*#
    Language: Polish OS: 32-Bit Win Release Date: 01 Jan 1997
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), Windows 98 (plus Y2K updates), Year 2000 update for Internet Explorer 3.02, SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    VB 5.0- Learning, Professional, Enterprise

    Czech, Polish, Portuguese (Brazil), and Russian contain US Software.

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1930 through 2029 using two-digit shortcuts or user configurable

    How the product runtime handles dates:

    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) requires Visual Basic to interpret to what century the date corresponds.

    Two-digit shortcut handling:

    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900s. The product will function into the 21st century through the end of year 2030 in accordance with industry standard 100-year date windowing. Developers can modify this date window to their own needs as described in the Windows 98 control panel or as described in the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of:

    If the products or technologies listed below are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Fix

    Internet Explorer 3.02

    Year 2000 Update

    http://www.microsoft.com/windows/ie/download/windows.htm

    Internet Explorer 4.01

    SP1

    http://www.microsoft.com/ie

    SQL 6.5

    SP5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 SP2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    SP4

    http://www.microsoft.com/ntserver

    Note for Enterprise Edition Users

    Visual SourceSafe contains a small cosmetic display issue when using the history pre-dialog:

    1. In the History pre-dialog where users can specify a date range to do a history on ("show me the History between 1/1/97 and 2/24/2000), if users specify a date after the year 2000, it will be treated as a date in the 1900s. The same problem exists on the command line.

    2. The history pre-dialog in version 5.0 does not accept 4-digit years.

    The issues described above are cosmetic display problems. Data is stored correctly and clock rollover to the year 2000 will not cause data loss.

    The most restrictive structure Visual SourceSafe uses for dates is a long integer containing the number of seconds since January 1, 1970.

    Testing guidelines and recommendations:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  5.0   (Portuguese (Brazil))

    Product Summary
    Product: Visual Basic (32-bit) Version: 5.0 Category:Compliant*#
    Language: Portuguese (Brazil) OS: 32-Bit Win Release Date: 01 Jan 1997
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), Windows 98 (plus Y2K updates), Year 2000 update for Internet Explorer 3.02, SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    VB 5.0- Learning, Professional, Enterprise

    Czech, Polish, Portuguese (Brazil), and Russian contain US Software.

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1930 through 2029 using two-digit shortcuts or user configurable

    How the product runtime handles dates:

    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) requires Visual Basic to interpret to what century the date corresponds.

    Two-digit shortcut handling:

    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900s. The product will function into the 21st century through the end of year 2030 in accordance with industry standard 100-year date windowing. Developers can modify this date window to their own needs as described in the Windows 98 control panel or as described in the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of:

    If the products or technologies listed below are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Fix

    Internet Explorer 3.02

    Year 2000 Update

    http://www.microsoft.com/windows/ie/download/windows.htm

    Internet Explorer 4.01

    SP1

    http://www.microsoft.com/ie

    SQL 6.5

    SP5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 SP2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    SP4

    http://www.microsoft.com/ntserver

    Note for Enterprise Edition Users

    Visual SourceSafe contains a small cosmetic display issue when using the history pre-dialog:

    1. In the History pre-dialog where users can specify a date range to do a history on ("show me the History between 1/1/97 and 2/24/2000), if users specify a date after the year 2000, it will be treated as a date in the 1900s. The same problem exists on the command line.

    2. The history pre-dialog in version 5.0 does not accept 4-digit years.

    The issues described above are cosmetic display problems. Data is stored correctly and clock rollover to the year 2000 will not cause data loss.

    The most restrictive structure Visual SourceSafe uses for dates is a long integer containing the number of seconds since January 1, 1970.

    Testing guidelines and recommendations:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  5.0   (Russian)

    Product Summary
    Product: Visual Basic (32-bit) Version: 5.0 Category:Compliant*#
    Language: Russian OS: 32-Bit Win Release Date: 01 Jan 1997
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), Windows 98 (plus Y2K updates), Year 2000 update for Internet Explorer 3.02, SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    VB 5.0- Learning, Professional, Enterprise

    Czech, Polish, Portuguese (Brazil), and Russian contain US Software.

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1930 through 2029 using two-digit shortcuts or user configurable

    How the product runtime handles dates:

    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) requires Visual Basic to interpret to what century the date corresponds.

    Two-digit shortcut handling:

    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900s. The product will function into the 21st century through the end of year 2030 in accordance with industry standard 100-year date windowing. Developers can modify this date window to their own needs as described in the Windows 98 control panel or as described in the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of:

    If the products or technologies listed below are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Fix

    Internet Explorer 3.02

    Year 2000 Update

    http://www.microsoft.com/windows/ie/download/windows.htm

    Internet Explorer 4.01

    SP1

    http://www.microsoft.com/ie

    SQL 6.5

    SP5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 SP2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    SP4

    http://www.microsoft.com/ntserver

    Note for Enterprise Edition Users

    Visual SourceSafe contains a small cosmetic display issue when using the history pre-dialog:

    1. In the History pre-dialog where users can specify a date range to do a history on ("show me the History between 1/1/97 and 2/24/2000), if users specify a date after the year 2000, it will be treated as a date in the 1900s. The same problem exists on the command line.

    2. The history pre-dialog in version 5.0 does not accept 4-digit years.

    The issues described above are cosmetic display problems. Data is stored correctly and clock rollover to the year 2000 will not cause data loss.

    The most restrictive structure Visual SourceSafe uses for dates is a long integer containing the number of seconds since January 1, 1970.

    Testing guidelines and recommendations:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  5.0   (Spanish)

    Product Summary
    Product: Visual Basic (32-bit) Version: 5.0 Category:Compliant*#
    Language: Spanish OS: 32-Bit Win Release Date: 01 Jan 1997
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), Windows 98 (plus Y2K updates), Year 2000 update for Internet Explorer 3.02, SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    VB 5.0- Learning, Professional, Enterprise

    Czech, Polish, Portuguese (Brazil), and Russian contain US Software.

    Developing Year 2000 Compliant Software

    Operational Range for Data: 1930 through 2029 using two-digit shortcuts or user configurable

    How the product runtime handles dates:

    While all versions of Visual Basic will handle years greater than 1999 (in a 4-digit format), passing a 2-digit year in a date (such as 7/3/45) requires Visual Basic to interpret to what century the date corresponds.

    Two-digit shortcut handling:

    Visual Basic 5.0 converts 2-digit years to 4-digit years based on the default in the Automation libraries for all date functions. Visual Basic 5.0 shipped with version 2.20.4054 that converts 2-digit years to the 2000s if the 2-digit year is between 00 and 29. If the 2-digit year is between 30 and 99, the date is converted to the 1900s. The product will function into the 21st century through the end of year 2030 in accordance with industry standard 100-year date windowing. Developers can modify this date window to their own needs as described in the Windows 98 control panel or as described in the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    Users can use their own set of rules instead of relying on the defaults native to Visual Basic. For example, users may enter only a 2-digit year and have 00 to 49 correspond to the years 2000 to 2049 and have 50 to 99 correspond to the years 1950 to 1999.

    When accepting a date string from the user, test the format of the string to determine the number of digits entered for the year. According to the rules for this sample application, 1/11/45 is in the year 2045, and not in the year 1945. Within the code for the application, change the string to use the appropriate 4-digit year, and then convert that date string with the 4-digit year into a date variable.

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of:

    If the products or technologies listed below are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Fix

    Internet Explorer 3.02

    Year 2000 Update

    http://www.microsoft.com/windows/ie/download/windows.htm

    Internet Explorer 4.01

    SP1

    http://www.microsoft.com/ie

    SQL 6.5

    SP5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 SP2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    SP4

    http://www.microsoft.com/ntserver

    Note for Enterprise Edition Users

    Visual SourceSafe contains a small cosmetic display issue when using the history pre-dialog:

    1. In the History pre-dialog where users can specify a date range to do a history on ("show me the History between 1/1/97 and 2/24/2000), if users specify a date after the year 2000, it will be treated as a date in the 1900s. The same problem exists on the command line.

    2. The history pre-dialog in version 5.0 does not accept 4-digit years.

    The issues described above are cosmetic display problems. Data is stored correctly and clock rollover to the year 2000 will not cause data loss.

    The most restrictive structure Visual SourceSafe uses for dates is a long integer containing the number of seconds since January 1, 1970.

    Testing guidelines and recommendations:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  6.0   (Chinese - Simplified)

    Product Summary
    Product: Visual Basic (32-bit) Version: 6.0 Category:Compliant*
    Language: Chinese - Simplified OS: 32-Bit Win Release Date: 01 Sep 1998
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2 or greater, Visual Database Tools 6.0
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    Introductory, Enterprise, Learning, Professional, and Standard editions.

    Operational Range for Data: 1930 through 2029 using 2-digit shortcuts or user configurable.

    Czech, Hungarian, Polish, Portuguese (Brazil), Romanian, and Russian versions contain US software.

    Developing Year 2000 Compliant Software

    How the product runtime handles dates:

    Visual Basic 6.0 stores year-dates internally as 4-digits.

    Two-digit shortcut handling:

    The first 2 digits are assumed according to a specific rule in cases where only 2 digits are supplied for the date.

    The rule is:

    2-digit dates between 00-29 are assumed to occur in the 2000s (2000-2029).

    2-digit dates between 30-99 are assumed to occur in the 1900s (1930-1999).

    NOTE: This string to date conversion is done by OLE-Automation. Starting from the version of OLE Automation shipped with Visual Studio 6 (Fall 98), OLE-Automation (32-bit and beyond) will allow the user or administrator to set the 100-year window for parsing 2-digit dates. (The default will be as stated above, 1930 - 2029).

    Outlook Express 4.01 date handling:

    Outlook Express 4.01 (OE) is included with, but not a requirement forVisual Basic 6.0. If Outlook Express 4.01 receives an IMAP mail message or a News message with a 2-digit year as the sent date, the date can be misinterpreted under certain conditions. If the 2-digit year is anything other than 99, OE will assume the century value is the same as the current century. If the current year is 2000, and a 2-digit date is received as 97, then the year will be interpreted as 2097. However, there is one special case when different logic is applied. If the 2-digit year 99 is received and current year is a multiple of 100 (e.g. 2000), the year will be interpreted as the current year plus 98 (e.g. 2098). You can find more information about this in the Internet Explorer (32-bit) 4.0x Year 2000 disclosure document.

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    The product has known issues when dates are stored as strings. It is recommended that all dates are stored using Date data type as opposed to strings.

    User-defined functions are a prime area of date handling errors. A poorly written function may lead to problems.

    Dates that are stored as strings can also be a problem if there is an error in the information. Visual Basic will interpret a string as a date if, by rearranging the month/day/year order, a valid date can be found.

    For example, both 3/30/98 (March 30, 1998) and 87/3/1 (March 1, 1987) are valid dates even though the month/day/year order have changed. For more information on which occasions might result in a date conversion error, please see the OLE Automation compliance document

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of when using this tool:

    If the following products or technologies are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Update

    Internet Explorer 4.x

    Service Pack 1

    http://www.microsoft.com/windows/ie/download/windows.htm

    OLE DB

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    SQL 6.5

    Service Pack 5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    Service Pack 5

    http://www.microsoft.com/ntserver

    Oracle Issues

    There is an issue regarding 2-digit year parsing in the Visual Database Tools when connecting to an Oracle database with a system configured for 2-digit year format. If the year entered into the Grid Pane’s Criteria cell is between 2029 and 2000 (the system default 2-digit year window for year 2000 dates) the date will be converted by OLEAUT32 into a 2-digit value when parsed into the SQL Pane. Oracle will interpret this as a year between 1929 and 1900.

    The recommended work-around for this is to set your system’s Short Date format to include a 4-digit year.

    A design-time update to the Visual Database Tools that addresses this issue is available for download as a part of Visual Studio 6.0 Service Pack 3.

     

    Testing guidelines and recommendations:

    Chapter 9 of Visual Basic documentation on MSDN has several examples of how to test for Year 2000 problems in Visual Basic applications. This is available on http://msdn.microsoft.com/library/books/advnvb5/html/Ch09.htm



    Users testing applications written in Visual Basic should be especially careful to test the following problem areas:

    User-defined functions: Many applications contain user-defined functions written in Visual Basic to deal with dates in various ways. Many of these functions store date values as strings. Manipulating these values improperly can result in date handling errors that are outside of the scope of the testing that was done at Microsoft on the Year 2000 issue.

    The date usage error described above can cause problems if an error handling routine is meant to catch improperly entered dates. Since Visual Basic rarely generates an error when a string date is used as an input, an error handling routine is unlikely to be called. In this case the proper programming technique would be to validate the data using code instead of relying on a runtime error to signal an improper date.


    Code Example:

    The following example illustrates the date window in action with various input dates.

    Sub TestDate()
    Dim MyDate As Date
    MyDate = "1/1/00"
    Format MyDate, "mm/dd/yyyy"
    MsgBox MyDate
    End Sub

    MyDate input

    Expected behavior

    1/1/00 1/1/1 1/1/9 1/1/2000 4/1/98 10/24/29 7/4/30 2/29/00 2/29/1900

    1/1/2000 1/1/2001 1/1/2009 1/1/2000 4/1/1998 10/24/2029 7/4/1930 2/29/2000 error- Type mismatch (1900 not a leap year)

     

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  6.0   (Chinese - Traditional)

    Product Summary
    Product: Visual Basic (32-bit) Version: 6.0 Category:Compliant*#
    Language: Chinese - Traditional OS: 32-Bit Win Release Date: 01 Sep 1998
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2 or greater, Visual Database Tools 6.0
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    Introductory, Enterprise, Learning, Professional, and Standard editions.

    Operational Range for Data: 1930 through 2029 using 2-digit shortcuts or user configurable.

    Czech, Hungarian, Polish, Portuguese (Brazil), Romanian, and Russian versions contain US software.

    Developing Year 2000 Compliant Software

    How the product runtime handles dates:

    Visual Basic 6.0 stores year-dates internally as 4-digits.

    Two-digit shortcut handling:

    The first 2 digits are assumed according to a specific rule in cases where only 2 digits are supplied for the date.

    The rule is:

    2-digit dates between 00-29 are assumed to occur in the 2000s (2000-2029).

    2-digit dates between 30-99 are assumed to occur in the 1900s (1930-1999).

    NOTE: This string to date conversion is done by OLE-Automation. Starting from the version of OLE Automation shipped with Visual Studio 6 (Fall 98), OLE-Automation (32-bit and beyond) will allow the user or administrator to set the 100-year window for parsing 2-digit dates. (The default will be as stated above, 1930 - 2029).

    Outlook Express 4.01 date handling:

    Outlook Express 4.01 (OE) is included with, but not a requirement forVisual Basic 6.0. If Outlook Express 4.01 receives an IMAP mail message or a News message with a 2-digit year as the sent date, the date can be misinterpreted under certain conditions. If the 2-digit year is anything other than 99, OE will assume the century value is the same as the current century. If the current year is 2000, and a 2-digit date is received as 97, then the year will be interpreted as 2097. However, there is one special case when different logic is applied. If the 2-digit year 99 is received and current year is a multiple of 100 (e.g. 2000), the year will be interpreted as the current year plus 98 (e.g. 2098). You can find more information about this in the Internet Explorer (32-bit) 4.0x Year 2000 disclosure document.

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    The product has known issues when dates are stored as strings. It is recommended that all dates are stored using Date data type as opposed to strings.

    User-defined functions are a prime area of date handling errors. A poorly written function may lead to problems.

    Dates that are stored as strings can also be a problem if there is an error in the information. Visual Basic will interpret a string as a date if, by rearranging the month/day/year order, a valid date can be found.

    For example, both 3/30/98 (March 30, 1998) and 87/3/1 (March 1, 1987) are valid dates even though the month/day/year order have changed. For more information on which occasions might result in a date conversion error, please see the OLE Automation compliance document

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of when using this tool:

    If the following products or technologies are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Update

    Internet Explorer 4.x

    Service Pack 1

    http://www.microsoft.com/windows/ie/download/windows.htm

    OLE DB

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    SQL 6.5

    Service Pack 5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    Service Pack 5

    http://www.microsoft.com/ntserver

    Oracle Issues

    There is an issue regarding 2-digit year parsing in the Visual Database Tools when connecting to an Oracle database with a system configured for 2-digit year format. If the year entered into the Grid Pane’s Criteria cell is between 2029 and 2000 (the system default 2-digit year window for year 2000 dates) the date will be converted by OLEAUT32 into a 2-digit value when parsed into the SQL Pane. Oracle will interpret this as a year between 1929 and 1900.

    The recommended work-around for this is to set your system’s Short Date format to include a 4-digit year.

    A design-time update to the Visual Database Tools that addresses this issue is available for download as a part of Visual Studio 6.0 Service Pack 3.

     

    Testing guidelines and recommendations:

    Chapter 9 of Visual Basic documentation on MSDN has several examples of how to test for Year 2000 problems in Visual Basic applications. This is available on http://msdn.microsoft.com/library/books/advnvb5/html/Ch09.htm



    Users testing applications written in Visual Basic should be especially careful to test the following problem areas:

    User-defined functions: Many applications contain user-defined functions written in Visual Basic to deal with dates in various ways. Many of these functions store date values as strings. Manipulating these values improperly can result in date handling errors that are outside of the scope of the testing that was done at Microsoft on the Year 2000 issue.

    The date usage error described above can cause problems if an error handling routine is meant to catch improperly entered dates. Since Visual Basic rarely generates an error when a string date is used as an input, an error handling routine is unlikely to be called. In this case the proper programming technique would be to validate the data using code instead of relying on a runtime error to signal an improper date.


    Code Example:

    The following example illustrates the date window in action with various input dates.

    Sub TestDate()
    Dim MyDate As Date
    MyDate = "1/1/00"
    Format MyDate, "mm/dd/yyyy"
    MsgBox MyDate
    End Sub

    MyDate input

    Expected behavior

    1/1/00 1/1/1 1/1/9 1/1/2000 4/1/98 10/24/29 7/4/30 2/29/00 2/29/1900

    1/1/2000 1/1/2001 1/1/2009 1/1/2000 4/1/1998 10/24/2029 7/4/1930 2/29/2000 error- Type mismatch (1900 not a leap year)

     

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  6.0   (Czech)

    Product Summary
    Product: Visual Basic (32-bit) Version: 6.0 Category:Compliant*#
    Language: Czech OS: 32-Bit Win Release Date: 01 Sep 1998
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2 or greater, Visual Database Tools 6.0
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    Introductory, Enterprise, Learning, Professional, and Standard editions.

    Operational Range for Data: 1930 through 2029 using 2-digit shortcuts or user configurable.

    Czech, Hungarian, Polish, Portuguese (Brazil), Romanian, and Russian versions contain US software.

    Developing Year 2000 Compliant Software

    How the product runtime handles dates:

    Visual Basic 6.0 stores year-dates internally as 4-digits.

    Two-digit shortcut handling:

    The first 2 digits are assumed according to a specific rule in cases where only 2 digits are supplied for the date.

    The rule is:

    2-digit dates between 00-29 are assumed to occur in the 2000s (2000-2029).

    2-digit dates between 30-99 are assumed to occur in the 1900s (1930-1999).

    NOTE: This string to date conversion is done by OLE-Automation. Starting from the version of OLE Automation shipped with Visual Studio 6 (Fall 98), OLE-Automation (32-bit and beyond) will allow the user or administrator to set the 100-year window for parsing 2-digit dates. (The default will be as stated above, 1930 - 2029).

    Outlook Express 4.01 date handling:

    Outlook Express 4.01 (OE) is included with, but not a requirement forVisual Basic 6.0. If Outlook Express 4.01 receives an IMAP mail message or a News message with a 2-digit year as the sent date, the date can be misinterpreted under certain conditions. If the 2-digit year is anything other than 99, OE will assume the century value is the same as the current century. If the current year is 2000, and a 2-digit date is received as 97, then the year will be interpreted as 2097. However, there is one special case when different logic is applied. If the 2-digit year 99 is received and current year is a multiple of 100 (e.g. 2000), the year will be interpreted as the current year plus 98 (e.g. 2098). You can find more information about this in the Internet Explorer (32-bit) 4.0x Year 2000 disclosure document.

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    The product has known issues when dates are stored as strings. It is recommended that all dates are stored using Date data type as opposed to strings.

    User-defined functions are a prime area of date handling errors. A poorly written function may lead to problems.

    Dates that are stored as strings can also be a problem if there is an error in the information. Visual Basic will interpret a string as a date if, by rearranging the month/day/year order, a valid date can be found.

    For example, both 3/30/98 (March 30, 1998) and 87/3/1 (March 1, 1987) are valid dates even though the month/day/year order have changed. For more information on which occasions might result in a date conversion error, please see the OLE Automation compliance document

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of when using this tool:

    If the following products or technologies are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Update

    Internet Explorer 4.x

    Service Pack 1

    http://www.microsoft.com/windows/ie/download/windows.htm

    OLE DB

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    SQL 6.5

    Service Pack 5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    Service Pack 5

    http://www.microsoft.com/ntserver

    Oracle Issues

    There is an issue regarding 2-digit year parsing in the Visual Database Tools when connecting to an Oracle database with a system configured for 2-digit year format. If the year entered into the Grid Pane’s Criteria cell is between 2029 and 2000 (the system default 2-digit year window for year 2000 dates) the date will be converted by OLEAUT32 into a 2-digit value when parsed into the SQL Pane. Oracle will interpret this as a year between 1929 and 1900.

    The recommended work-around for this is to set your system’s Short Date format to include a 4-digit year.

    A design-time update to the Visual Database Tools that addresses this issue is available for download as a part of Visual Studio 6.0 Service Pack 3.

     

    Testing guidelines and recommendations:

    Chapter 9 of Visual Basic documentation on MSDN has several examples of how to test for Year 2000 problems in Visual Basic applications. This is available on http://msdn.microsoft.com/library/books/advnvb5/html/Ch09.htm



    Users testing applications written in Visual Basic should be especially careful to test the following problem areas:

    User-defined functions: Many applications contain user-defined functions written in Visual Basic to deal with dates in various ways. Many of these functions store date values as strings. Manipulating these values improperly can result in date handling errors that are outside of the scope of the testing that was done at Microsoft on the Year 2000 issue.

    The date usage error described above can cause problems if an error handling routine is meant to catch improperly entered dates. Since Visual Basic rarely generates an error when a string date is used as an input, an error handling routine is unlikely to be called. In this case the proper programming technique would be to validate the data using code instead of relying on a runtime error to signal an improper date.


    Code Example:

    The following example illustrates the date window in action with various input dates.

    Sub TestDate()
    Dim MyDate As Date
    MyDate = "1/1/00"
    Format MyDate, "mm/dd/yyyy"
    MsgBox MyDate
    End Sub

    MyDate input

    Expected behavior

    1/1/00 1/1/1 1/1/9 1/1/2000 4/1/98 10/24/29 7/4/30 2/29/00 2/29/1900

    1/1/2000 1/1/2001 1/1/2009 1/1/2000 4/1/1998 10/24/2029 7/4/1930 2/29/2000 error- Type mismatch (1900 not a leap year)

     

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  6.0   (English)

    Product Summary
    Product: Visual Basic (32-bit) Version: 6.0 Category:Compliant*#
    Language: English OS: 32-Bit Win Release Date: 01 Sep 1998
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2 or greater, Visual Database Tools 6.0
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    Introductory, Enterprise, Learning, Professional, and Standard editions.

    Operational Range for Data: 1930 through 2029 using 2-digit shortcuts or user configurable.

    Czech, Hungarian, Polish, Portuguese (Brazil), Romanian, and Russian versions contain US software.

    Developing Year 2000 Compliant Software

    How the product runtime handles dates:

    Visual Basic 6.0 stores year-dates internally as 4-digits.

    Two-digit shortcut handling:

    The first 2 digits are assumed according to a specific rule in cases where only 2 digits are supplied for the date.

    The rule is:

    2-digit dates between 00-29 are assumed to occur in the 2000s (2000-2029).

    2-digit dates between 30-99 are assumed to occur in the 1900s (1930-1999).

    NOTE: This string to date conversion is done by OLE-Automation. Starting from the version of OLE Automation shipped with Visual Studio 6 (Fall 98), OLE-Automation (32-bit and beyond) will allow the user or administrator to set the 100-year window for parsing 2-digit dates. (The default will be as stated above, 1930 - 2029).

    Outlook Express 4.01 date handling:

    Outlook Express 4.01 (OE) is included with, but not a requirement forVisual Basic 6.0. If Outlook Express 4.01 receives an IMAP mail message or a News message with a 2-digit year as the sent date, the date can be misinterpreted under certain conditions. If the 2-digit year is anything other than 99, OE will assume the century value is the same as the current century. If the current year is 2000, and a 2-digit date is received as 97, then the year will be interpreted as 2097. However, there is one special case when different logic is applied. If the 2-digit year 99 is received and current year is a multiple of 100 (e.g. 2000), the year will be interpreted as the current year plus 98 (e.g. 2098). You can find more information about this in the Internet Explorer (32-bit) 4.0x Year 2000 disclosure document.

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    The product has known issues when dates are stored as strings. It is recommended that all dates are stored using Date data type as opposed to strings.

    User-defined functions are a prime area of date handling errors. A poorly written function may lead to problems.

    Dates that are stored as strings can also be a problem if there is an error in the information. Visual Basic will interpret a string as a date if, by rearranging the month/day/year order, a valid date can be found.

    For example, both 3/30/98 (March 30, 1998) and 87/3/1 (March 1, 1987) are valid dates even though the month/day/year order have changed. For more information on which occasions might result in a date conversion error, please see the OLE Automation compliance document

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of when using this tool:

    If the following products or technologies are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Update

    Internet Explorer 4.x

    Service Pack 1

    http://www.microsoft.com/windows/ie/download/windows.htm

    OLE DB

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    SQL 6.5

    Service Pack 5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    Service Pack 5

    http://www.microsoft.com/ntserver

    Oracle Issues

    There is an issue regarding 2-digit year parsing in the Visual Database Tools when connecting to an Oracle database with a system configured for 2-digit year format. If the year entered into the Grid Pane’s Criteria cell is between 2029 and 2000 (the system default 2-digit year window for year 2000 dates) the date will be converted by OLEAUT32 into a 2-digit value when parsed into the SQL Pane. Oracle will interpret this as a year between 1929 and 1900.

    The recommended work-around for this is to set your system’s Short Date format to include a 4-digit year.

    A design-time update to the Visual Database Tools that addresses this issue is available for download as a part of Visual Studio 6.0 Service Pack 3.

     

    Testing guidelines and recommendations:

    Chapter 9 of Visual Basic documentation on MSDN has several examples of how to test for Year 2000 problems in Visual Basic applications. This is available on http://msdn.microsoft.com/library/books/advnvb5/html/Ch09.htm



    Users testing applications written in Visual Basic should be especially careful to test the following problem areas:

    User-defined functions: Many applications contain user-defined functions written in Visual Basic to deal with dates in various ways. Many of these functions store date values as strings. Manipulating these values improperly can result in date handling errors that are outside of the scope of the testing that was done at Microsoft on the Year 2000 issue.

    The date usage error described above can cause problems if an error handling routine is meant to catch improperly entered dates. Since Visual Basic rarely generates an error when a string date is used as an input, an error handling routine is unlikely to be called. In this case the proper programming technique would be to validate the data using code instead of relying on a runtime error to signal an improper date.


    Code Example:

    The following example illustrates the date window in action with various input dates.

    Sub TestDate()
    Dim MyDate As Date
    MyDate = "1/1/00"
    Format MyDate, "mm/dd/yyyy"
    MsgBox MyDate
    End Sub

    MyDate input

    Expected behavior

    1/1/00 1/1/1 1/1/9 1/1/2000 4/1/98 10/24/29 7/4/30 2/29/00 2/29/1900

    1/1/2000 1/1/2001 1/1/2009 1/1/2000 4/1/1998 10/24/2029 7/4/1930 2/29/2000 error- Type mismatch (1900 not a leap year)

     

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  6.0   (French)

    Product Summary
    Product: Visual Basic (32-bit) Version: 6.0 Category:Compliant*#
    Language: French OS: 32-Bit Win Release Date: 01 Sep 1998
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2 or greater, Visual Database Tools 6.0
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    Introductory, Enterprise, Learning, Professional, and Standard editions.

    Operational Range for Data: 1930 through 2029 using 2-digit shortcuts or user configurable.

    Czech, Hungarian, Polish, Portuguese (Brazil), Romanian, and Russian versions contain US software.

    Developing Year 2000 Compliant Software

    How the product runtime handles dates:

    Visual Basic 6.0 stores year-dates internally as 4-digits.

    Two-digit shortcut handling:

    The first 2 digits are assumed according to a specific rule in cases where only 2 digits are supplied for the date.

    The rule is:

    2-digit dates between 00-29 are assumed to occur in the 2000s (2000-2029).

    2-digit dates between 30-99 are assumed to occur in the 1900s (1930-1999).

    NOTE: This string to date conversion is done by OLE-Automation. Starting from the version of OLE Automation shipped with Visual Studio 6 (Fall 98), OLE-Automation (32-bit and beyond) will allow the user or administrator to set the 100-year window for parsing 2-digit dates. (The default will be as stated above, 1930 - 2029).

    Outlook Express 4.01 date handling:

    Outlook Express 4.01 (OE) is included with, but not a requirement forVisual Basic 6.0. If Outlook Express 4.01 receives an IMAP mail message or a News message with a 2-digit year as the sent date, the date can be misinterpreted under certain conditions. If the 2-digit year is anything other than 99, OE will assume the century value is the same as the current century. If the current year is 2000, and a 2-digit date is received as 97, then the year will be interpreted as 2097. However, there is one special case when different logic is applied. If the 2-digit year 99 is received and current year is a multiple of 100 (e.g. 2000), the year will be interpreted as the current year plus 98 (e.g. 2098). You can find more information about this in the Internet Explorer (32-bit) 4.0x Year 2000 disclosure document.

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    The product has known issues when dates are stored as strings. It is recommended that all dates are stored using Date data type as opposed to strings.

    User-defined functions are a prime area of date handling errors. A poorly written function may lead to problems.

    Dates that are stored as strings can also be a problem if there is an error in the information. Visual Basic will interpret a string as a date if, by rearranging the month/day/year order, a valid date can be found.

    For example, both 3/30/98 (March 30, 1998) and 87/3/1 (March 1, 1987) are valid dates even though the month/day/year order have changed. For more information on which occasions might result in a date conversion error, please see the OLE Automation compliance document

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of when using this tool:

    If the following products or technologies are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Update

    Internet Explorer 4.x

    Service Pack 1

    http://www.microsoft.com/windows/ie/download/windows.htm

    OLE DB

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    SQL 6.5

    Service Pack 5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    Service Pack 5

    http://www.microsoft.com/ntserver

    Oracle Issues

    There is an issue regarding 2-digit year parsing in the Visual Database Tools when connecting to an Oracle database with a system configured for 2-digit year format. If the year entered into the Grid Pane’s Criteria cell is between 2029 and 2000 (the system default 2-digit year window for year 2000 dates) the date will be converted by OLEAUT32 into a 2-digit value when parsed into the SQL Pane. Oracle will interpret this as a year between 1929 and 1900.

    The recommended work-around for this is to set your system’s Short Date format to include a 4-digit year.

    A design-time update to the Visual Database Tools that addresses this issue is available for download as a part of Visual Studio 6.0 Service Pack 3.

     

    Testing guidelines and recommendations:

    Chapter 9 of Visual Basic documentation on MSDN has several examples of how to test for Year 2000 problems in Visual Basic applications. This is available on http://msdn.microsoft.com/library/books/advnvb5/html/Ch09.htm



    Users testing applications written in Visual Basic should be especially careful to test the following problem areas:

    User-defined functions: Many applications contain user-defined functions written in Visual Basic to deal with dates in various ways. Many of these functions store date values as strings. Manipulating these values improperly can result in date handling errors that are outside of the scope of the testing that was done at Microsoft on the Year 2000 issue.

    The date usage error described above can cause problems if an error handling routine is meant to catch improperly entered dates. Since Visual Basic rarely generates an error when a string date is used as an input, an error handling routine is unlikely to be called. In this case the proper programming technique would be to validate the data using code instead of relying on a runtime error to signal an improper date.


    Code Example:

    The following example illustrates the date window in action with various input dates.

    Sub TestDate()
    Dim MyDate As Date
    MyDate = "1/1/00"
    Format MyDate, "mm/dd/yyyy"
    MsgBox MyDate
    End Sub

    MyDate input

    Expected behavior

    1/1/00 1/1/1 1/1/9 1/1/2000 4/1/98 10/24/29 7/4/30 2/29/00 2/29/1900

    1/1/2000 1/1/2001 1/1/2009 1/1/2000 4/1/1998 10/24/2029 7/4/1930 2/29/2000 error- Type mismatch (1900 not a leap year)

     

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  6.0   (German)

    Product Summary
    Product: Visual Basic (32-bit) Version: 6.0 Category:Compliant*#
    Language: German OS: 32-Bit Win Release Date: 01 Sep 1998
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2 or greater, Visual Database Tools 6.0
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    Introductory, Enterprise, Learning, Professional, and Standard editions.

    Operational Range for Data: 1930 through 2029 using 2-digit shortcuts or user configurable.

    Czech, Hungarian, Polish, Portuguese (Brazil), Romanian, and Russian versions contain US software.

    Developing Year 2000 Compliant Software

    How the product runtime handles dates:

    Visual Basic 6.0 stores year-dates internally as 4-digits.

    Two-digit shortcut handling:

    The first 2 digits are assumed according to a specific rule in cases where only 2 digits are supplied for the date.

    The rule is:

    2-digit dates between 00-29 are assumed to occur in the 2000s (2000-2029).

    2-digit dates between 30-99 are assumed to occur in the 1900s (1930-1999).

    NOTE: This string to date conversion is done by OLE-Automation. Starting from the version of OLE Automation shipped with Visual Studio 6 (Fall 98), OLE-Automation (32-bit and beyond) will allow the user or administrator to set the 100-year window for parsing 2-digit dates. (The default will be as stated above, 1930 - 2029).

    Outlook Express 4.01 date handling:

    Outlook Express 4.01 (OE) is included with, but not a requirement forVisual Basic 6.0. If Outlook Express 4.01 receives an IMAP mail message or a News message with a 2-digit year as the sent date, the date can be misinterpreted under certain conditions. If the 2-digit year is anything other than 99, OE will assume the century value is the same as the current century. If the current year is 2000, and a 2-digit date is received as 97, then the year will be interpreted as 2097. However, there is one special case when different logic is applied. If the 2-digit year 99 is received and current year is a multiple of 100 (e.g. 2000), the year will be interpreted as the current year plus 98 (e.g. 2098). You can find more information about this in the Internet Explorer (32-bit) 4.0x Year 2000 disclosure document.

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    The product has known issues when dates are stored as strings. It is recommended that all dates are stored using Date data type as opposed to strings.

    User-defined functions are a prime area of date handling errors. A poorly written function may lead to problems.

    Dates that are stored as strings can also be a problem if there is an error in the information. Visual Basic will interpret a string as a date if, by rearranging the month/day/year order, a valid date can be found.

    For example, both 3/30/98 (March 30, 1998) and 87/3/1 (March 1, 1987) are valid dates even though the month/day/year order have changed. For more information on which occasions might result in a date conversion error, please see the OLE Automation compliance document

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of when using this tool:

    If the following products or technologies are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Update

    Internet Explorer 4.x

    Service Pack 1

    http://www.microsoft.com/windows/ie/download/windows.htm

    OLE DB

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    SQL 6.5

    Service Pack 5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    Service Pack 5

    http://www.microsoft.com/ntserver

    Oracle Issues

    There is an issue regarding 2-digit year parsing in the Visual Database Tools when connecting to an Oracle database with a system configured for 2-digit year format. If the year entered into the Grid Pane’s Criteria cell is between 2029 and 2000 (the system default 2-digit year window for year 2000 dates) the date will be converted by OLEAUT32 into a 2-digit value when parsed into the SQL Pane. Oracle will interpret this as a year between 1929 and 1900.

    The recommended work-around for this is to set your system’s Short Date format to include a 4-digit year.

    A design-time update to the Visual Database Tools that addresses this issue is available for download as a part of Visual Studio 6.0 Service Pack 3.

     

    Testing guidelines and recommendations:

    Chapter 9 of Visual Basic documentation on MSDN has several examples of how to test for Year 2000 problems in Visual Basic applications. This is available on http://msdn.microsoft.com/library/books/advnvb5/html/Ch09.htm



    Users testing applications written in Visual Basic should be especially careful to test the following problem areas:

    User-defined functions: Many applications contain user-defined functions written in Visual Basic to deal with dates in various ways. Many of these functions store date values as strings. Manipulating these values improperly can result in date handling errors that are outside of the scope of the testing that was done at Microsoft on the Year 2000 issue.

    The date usage error described above can cause problems if an error handling routine is meant to catch improperly entered dates. Since Visual Basic rarely generates an error when a string date is used as an input, an error handling routine is unlikely to be called. In this case the proper programming technique would be to validate the data using code instead of relying on a runtime error to signal an improper date.


    Code Example:

    The following example illustrates the date window in action with various input dates.

    Sub TestDate()
    Dim MyDate As Date
    MyDate = "1/1/00"
    Format MyDate, "mm/dd/yyyy"
    MsgBox MyDate
    End Sub

    MyDate input

    Expected behavior

    1/1/00 1/1/1 1/1/9 1/1/2000 4/1/98 10/24/29 7/4/30 2/29/00 2/29/1900

    1/1/2000 1/1/2001 1/1/2009 1/1/2000 4/1/1998 10/24/2029 7/4/1930 2/29/2000 error- Type mismatch (1900 not a leap year)

     

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  6.0   (Hungarian)

    Product Summary
    Product: Visual Basic (32-bit) Version: 6.0 Category:Compliant*#
    Language: Hungarian OS: 32-Bit Win Release Date: 01 Sep 1998
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2 or greater, Visual Database Tools 6.0
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    Introductory, Enterprise, Learning, Professional, and Standard editions.

    Operational Range for Data: 1930 through 2029 using 2-digit shortcuts or user configurable.

    Czech, Hungarian, Polish, Portuguese (Brazil), Romanian, and Russian versions contain US software.

    Developing Year 2000 Compliant Software

    How the product runtime handles dates:

    Visual Basic 6.0 stores year-dates internally as 4-digits.

    Two-digit shortcut handling:

    The first 2 digits are assumed according to a specific rule in cases where only 2 digits are supplied for the date.

    The rule is:

    2-digit dates between 00-29 are assumed to occur in the 2000s (2000-2029).

    2-digit dates between 30-99 are assumed to occur in the 1900s (1930-1999).

    NOTE: This string to date conversion is done by OLE-Automation. Starting from the version of OLE Automation shipped with Visual Studio 6 (Fall 98), OLE-Automation (32-bit and beyond) will allow the user or administrator to set the 100-year window for parsing 2-digit dates. (The default will be as stated above, 1930 - 2029).

    Outlook Express 4.01 date handling:

    Outlook Express 4.01 (OE) is included with, but not a requirement forVisual Basic 6.0. If Outlook Express 4.01 receives an IMAP mail message or a News message with a 2-digit year as the sent date, the date can be misinterpreted under certain conditions. If the 2-digit year is anything other than 99, OE will assume the century value is the same as the current century. If the current year is 2000, and a 2-digit date is received as 97, then the year will be interpreted as 2097. However, there is one special case when different logic is applied. If the 2-digit year 99 is received and current year is a multiple of 100 (e.g. 2000), the year will be interpreted as the current year plus 98 (e.g. 2098). You can find more information about this in the Internet Explorer (32-bit) 4.0x Year 2000 disclosure document.

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    The product has known issues when dates are stored as strings. It is recommended that all dates are stored using Date data type as opposed to strings.

    User-defined functions are a prime area of date handling errors. A poorly written function may lead to problems.

    Dates that are stored as strings can also be a problem if there is an error in the information. Visual Basic will interpret a string as a date if, by rearranging the month/day/year order, a valid date can be found.

    For example, both 3/30/98 (March 30, 1998) and 87/3/1 (March 1, 1987) are valid dates even though the month/day/year order have changed. For more information on which occasions might result in a date conversion error, please see the OLE Automation compliance document

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of when using this tool:

    If the following products or technologies are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Update

    Internet Explorer 4.x

    Service Pack 1

    http://www.microsoft.com/windows/ie/download/windows.htm

    OLE DB

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    SQL 6.5

    Service Pack 5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    Service Pack 5

    http://www.microsoft.com/ntserver

    Oracle Issues

    There is an issue regarding 2-digit year parsing in the Visual Database Tools when connecting to an Oracle database with a system configured for 2-digit year format. If the year entered into the Grid Pane’s Criteria cell is between 2029 and 2000 (the system default 2-digit year window for year 2000 dates) the date will be converted by OLEAUT32 into a 2-digit value when parsed into the SQL Pane. Oracle will interpret this as a year between 1929 and 1900.

    The recommended work-around for this is to set your system’s Short Date format to include a 4-digit year.

    A design-time update to the Visual Database Tools that addresses this issue is available for download as a part of Visual Studio 6.0 Service Pack 3.

     

    Testing guidelines and recommendations:

    Chapter 9 of Visual Basic documentation on MSDN has several examples of how to test for Year 2000 problems in Visual Basic applications. This is available on http://msdn.microsoft.com/library/books/advnvb5/html/Ch09.htm



    Users testing applications written in Visual Basic should be especially careful to test the following problem areas:

    User-defined functions: Many applications contain user-defined functions written in Visual Basic to deal with dates in various ways. Many of these functions store date values as strings. Manipulating these values improperly can result in date handling errors that are outside of the scope of the testing that was done at Microsoft on the Year 2000 issue.

    The date usage error described above can cause problems if an error handling routine is meant to catch improperly entered dates. Since Visual Basic rarely generates an error when a string date is used as an input, an error handling routine is unlikely to be called. In this case the proper programming technique would be to validate the data using code instead of relying on a runtime error to signal an improper date.


    Code Example:

    The following example illustrates the date window in action with various input dates.

    Sub TestDate()
    Dim MyDate As Date
    MyDate = "1/1/00"
    Format MyDate, "mm/dd/yyyy"
    MsgBox MyDate
    End Sub

    MyDate input

    Expected behavior

    1/1/00 1/1/1 1/1/9 1/1/2000 4/1/98 10/24/29 7/4/30 2/29/00 2/29/1900

    1/1/2000 1/1/2001 1/1/2009 1/1/2000 4/1/1998 10/24/2029 7/4/1930 2/29/2000 error- Type mismatch (1900 not a leap year)

     

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  6.0   (Italian)

    Product Summary
    Product: Visual Basic (32-bit) Version: 6.0 Category:Compliant*#
    Language: Italian OS: 32-Bit Win Release Date: 01 Sep 1998
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2 or greater, Visual Database Tools 6.0
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    Introductory, Enterprise, Learning, Professional, and Standard editions.

    Operational Range for Data: 1930 through 2029 using 2-digit shortcuts or user configurable.

    Czech, Hungarian, Polish, Portuguese (Brazil), Romanian, and Russian versions contain US software.

    Developing Year 2000 Compliant Software

    How the product runtime handles dates:

    Visual Basic 6.0 stores year-dates internally as 4-digits.

    Two-digit shortcut handling:

    The first 2 digits are assumed according to a specific rule in cases where only 2 digits are supplied for the date.

    The rule is:

    2-digit dates between 00-29 are assumed to occur in the 2000s (2000-2029).

    2-digit dates between 30-99 are assumed to occur in the 1900s (1930-1999).

    NOTE: This string to date conversion is done by OLE-Automation. Starting from the version of OLE Automation shipped with Visual Studio 6 (Fall 98), OLE-Automation (32-bit and beyond) will allow the user or administrator to set the 100-year window for parsing 2-digit dates. (The default will be as stated above, 1930 - 2029).

    Outlook Express 4.01 date handling:

    Outlook Express 4.01 (OE) is included with, but not a requirement forVisual Basic 6.0. If Outlook Express 4.01 receives an IMAP mail message or a News message with a 2-digit year as the sent date, the date can be misinterpreted under certain conditions. If the 2-digit year is anything other than 99, OE will assume the century value is the same as the current century. If the current year is 2000, and a 2-digit date is received as 97, then the year will be interpreted as 2097. However, there is one special case when different logic is applied. If the 2-digit year 99 is received and current year is a multiple of 100 (e.g. 2000), the year will be interpreted as the current year plus 98 (e.g. 2098). You can find more information about this in the Internet Explorer (32-bit) 4.0x Year 2000 disclosure document.

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    The product has known issues when dates are stored as strings. It is recommended that all dates are stored using Date data type as opposed to strings.

    User-defined functions are a prime area of date handling errors. A poorly written function may lead to problems.

    Dates that are stored as strings can also be a problem if there is an error in the information. Visual Basic will interpret a string as a date if, by rearranging the month/day/year order, a valid date can be found.

    For example, both 3/30/98 (March 30, 1998) and 87/3/1 (March 1, 1987) are valid dates even though the month/day/year order have changed. For more information on which occasions might result in a date conversion error, please see the OLE Automation compliance document

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of when using this tool:

    If the following products or technologies are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Update

    Internet Explorer 4.x

    Service Pack 1

    http://www.microsoft.com/windows/ie/download/windows.htm

    OLE DB

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    SQL 6.5

    Service Pack 5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    Service Pack 5

    http://www.microsoft.com/ntserver

    Oracle Issues

    There is an issue regarding 2-digit year parsing in the Visual Database Tools when connecting to an Oracle database with a system configured for 2-digit year format. If the year entered into the Grid Pane’s Criteria cell is between 2029 and 2000 (the system default 2-digit year window for year 2000 dates) the date will be converted by OLEAUT32 into a 2-digit value when parsed into the SQL Pane. Oracle will interpret this as a year between 1929 and 1900.

    The recommended work-around for this is to set your system’s Short Date format to include a 4-digit year.

    A design-time update to the Visual Database Tools that addresses this issue is available for download as a part of Visual Studio 6.0 Service Pack 3.

     

    Testing guidelines and recommendations:

    Chapter 9 of Visual Basic documentation on MSDN has several examples of how to test for Year 2000 problems in Visual Basic applications. This is available on http://msdn.microsoft.com/library/books/advnvb5/html/Ch09.htm



    Users testing applications written in Visual Basic should be especially careful to test the following problem areas:

    User-defined functions: Many applications contain user-defined functions written in Visual Basic to deal with dates in various ways. Many of these functions store date values as strings. Manipulating these values improperly can result in date handling errors that are outside of the scope of the testing that was done at Microsoft on the Year 2000 issue.

    The date usage error described above can cause problems if an error handling routine is meant to catch improperly entered dates. Since Visual Basic rarely generates an error when a string date is used as an input, an error handling routine is unlikely to be called. In this case the proper programming technique would be to validate the data using code instead of relying on a runtime error to signal an improper date.


    Code Example:

    The following example illustrates the date window in action with various input dates.

    Sub TestDate()
    Dim MyDate As Date
    MyDate = "1/1/00"
    Format MyDate, "mm/dd/yyyy"
    MsgBox MyDate
    End Sub

    MyDate input

    Expected behavior

    1/1/00 1/1/1 1/1/9 1/1/2000 4/1/98 10/24/29 7/4/30 2/29/00 2/29/1900

    1/1/2000 1/1/2001 1/1/2009 1/1/2000 4/1/1998 10/24/2029 7/4/1930 2/29/2000 error- Type mismatch (1900 not a leap year)

     

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Microsoft Year 2000 Resource Center
    Visual Basic (32-bit)  6.0   (Japanese)

    Product Summary
    Product: Visual Basic (32-bit) Version: 6.0 Category:Compliant*#
    Language: Japanese OS: 32-Bit Win Release Date: 01 Sep 1998
    Operational Range: -
    Can applications be built with this tool that adhere to the Microsoft Year 2000 Compliance Statement? Yes
    Prerequisites: See Below
    Product Dependencies: Windows NT 4.0 Service Pack 4, Windows 95 (+ year 2000 software updates), Windows 98 (+ year 2000 software updates), SQL Server 6.5 Service Pack 5, MDAC 2.0 Service Pack 2 or greater, Visual Database Tools 6.0
    Clock Dependencies: System Clock, Visual Basic runtime, (OLE) Automation Libraries
    Last Updated: 26 Oct 1999
    Product Details

    This report applies to:

    Introductory, Enterprise, Learning, Professional, and Standard editions.

    Operational Range for Data: 1930 through 2029 using 2-digit shortcuts or user configurable.

    Czech, Hungarian, Polish, Portuguese (Brazil), Romanian, and Russian versions contain US software.

    Developing Year 2000 Compliant Software

    How the product runtime handles dates:

    Visual Basic 6.0 stores year-dates internally as 4-digits.

    Two-digit shortcut handling:

    The first 2 digits are assumed according to a specific rule in cases where only 2 digits are supplied for the date.

    The rule is:

    2-digit dates between 00-29 are assumed to occur in the 2000s (2000-2029).

    2-digit dates between 30-99 are assumed to occur in the 1900s (1930-1999).

    NOTE: This string to date conversion is done by OLE-Automation. Starting from the version of OLE Automation shipped with Visual Studio 6 (Fall 98), OLE-Automation (32-bit and beyond) will allow the user or administrator to set the 100-year window for parsing 2-digit dates. (The default will be as stated above, 1930 - 2029).

    Outlook Express 4.01 date handling:

    Outlook Express 4.01 (OE) is included with, but not a requirement forVisual Basic 6.0. If Outlook Express 4.01 receives an IMAP mail message or a News message with a 2-digit year as the sent date, the date can be misinterpreted under certain conditions. If the 2-digit year is anything other than 99, OE will assume the century value is the same as the current century. If the current year is 2000, and a 2-digit date is received as 97, then the year will be interpreted as 2097. However, there is one special case when different logic is applied. If the 2-digit year 99 is received and current year is a multiple of 100 (e.g. 2000), the year will be interpreted as the current year plus 98 (e.g. 2098). You can find more information about this in the Internet Explorer (32-bit) 4.0x Year 2000 disclosure document.

    Recommended practices to develop year 2000 compliant applications with this Development Tool:

    The product has known issues when dates are stored as strings. It is recommended that all dates are stored using Date data type as opposed to strings.

    User-defined functions are a prime area of date handling errors. A poorly written function may lead to problems.

    Dates that are stored as strings can also be a problem if there is an error in the information. Visual Basic will interpret a string as a date if, by rearranging the month/day/year order, a valid date can be found.

    For example, both 3/30/98 (March 30, 1998) and 87/3/1 (March 1, 1987) are valid dates even though the month/day/year order have changed. For more information on which occasions might result in a date conversion error, please see the OLE Automation compliance document

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Common development errors dealing with year 2000 date issues:

    Please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

    Other design time issues to be aware of when using this tool:

    If the following products or technologies are installed, they should be updated to ensure proper functioning:

    Product

    Version

    Location of Update

    Internet Explorer 4.x

    Service Pack 1

    http://www.microsoft.com/windows/ie/download/windows.htm

    OLE DB

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    SQL 6.5

    Service Pack 5

    http://support.microsoft.com/support/downloads/

    ODBC

    MDAC 2.0 Service Pack 2 or greater

    http://www.microsoft.com/data/download.htm

    Windows NT 4.0

    Service Pack 5

    http://www.microsoft.com/ntserver

    Oracle Issues

    There is an issue regarding 2-digit year parsing in the Visual Database Tools when connecting to an Oracle database with a system configured for 2-digit year format. If the year entered into the Grid Pane’s Criteria cell is between 2029 and 2000 (the system default 2-digit year window for year 2000 dates) the date will be converted by OLEAUT32 into a 2-digit value when parsed into the SQL Pane. Oracle will interpret this as a year between 1929 and 1900.

    The recommended work-around for this is to set your system’s Short Date format to include a 4-digit year.

    A design-time update to the Visual Database Tools that addresses this issue is available for download as a part of Visual Studio 6.0 Service Pack 3.

     

    Testing guidelines and recommendations:

    Chapter 9 of Visual Basic documentation on MSDN has several examples of how to test for Year 2000 problems in Visual Basic applications. This is available on http://msdn.microsoft.com/library/books/advnvb5/html/Ch09.htm



    Users testing applications written in Visual Basic should be especially careful to test the following problem areas:

    User-defined functions: Many applications contain user-defined functions written in Visual Basic to deal with dates in various ways. Many of these functions store date values as strings. Manipulating these values improperly can result in date handling errors that are outside of the scope of the testing that was done at Microsoft on the Year 2000 issue.

    The date usage error described above can cause problems if an error handling routine is meant to catch improperly entered dates. Since Visual Basic rarely generates an error when a string date is used as an input, an error handling routine is unlikely to be called. In this case the proper programming technique would be to validate the data using code instead of relying on a runtime error to signal an improper date.


    Code Example:

    The following example illustrates the date window in action with various input dates.

    Sub TestDate()
    Dim MyDate As Date
    MyDate = "1/1/00"
    Format MyDate, "mm/dd/yyyy"
    MsgBox MyDate
    End Sub

    MyDate input

    Expected behavior

    1/1/00 1/1/1 1/1/9 1/1/2000 4/1/98 10/24/29 7/4/30 2/29/00 2/29/1900

    1/1/2000 1/1/2001 1/1/2009 1/1/2000 4/1/1998 10/24/2029 7/4/1930 2/29/2000 error- Type mismatch (1900 not a leap year)

     

    For more information, please refer to the white paper, "Developing Y2K Compliant Applications with Visual Basic"

     

     


    Legend of Symbols:
    *The product is compliant. User action is recommended, which may include loading a software update or assessing shared technology.
    #The product is compliant with an acceptable deviation 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 . Software updates are pending. Future maintenance actions will be recommended shortly.
    Note: Compliance ratings given for each product assume that all recommended actions have been taken.


    Itemized List of products in each Volume

    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://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, November 17, 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.