UpdateAssessment structure (waasapitypes.h)

UpdateAssessment contains information that assesses how up-to-date an installed OS is.


typedef struct tagUpdateAssessment {
  UpdateAssessmentStatus status;
  UpdateImpactLevel      impact;
  DWORD                  daysOutOfDate;
} UpdateAssessment;



An UpdateAssessmentStatus enumeration detailing how up-to-date the device is, and for what reason.


An UpdateImpactLevel enumeration detailing whether there is any impact on the device if it has an out-of-date OS.


Describes how much time has elapsed since the device has not installed an applicable update. daysOutOfDate is calculated by the current time minus the time since the next applicable update has been released, minus any deferral period. Thus, if an applicable update exists but hasn’t been applied due to deferral, this is accounted for in the calculation. daysOutOfDate is used to calculate the update impact level.


This structure is used most often with OSUpdateAssessment, which is in turn used with the GetOSUpdateAssessment method for IWaaSAssessor.

When GetOSUpdateAssessment is called, an OSUpdateAssessment structure is returned. Within this structure there are two UpdateAssessment structures: assessmentForCurrent and assessmentForUpToDate. The UpdateAssessment structure summarizes the assessments to determine whether a device is current or whether it is up-to-date, respectively; this is defined with the UpdateAssessmentStatus enumeration. The assessment informs how many days the device has been out-of-date with daysOutofDate. This date is used to determine if there is any potential impact (represented by the impact member in this structure) to the device.


Minimum supported client Windows 10, version 1703 [desktop apps only]
Minimum supported server Windows Server 2016 [desktop apps only]
Header waasapitypes.h