ZTIWindowsUpdate.wsf errors

Recently on the MyITForum.com listserv, a question appeared from Jeff:

I am having issues with ZTIWindowsUpdate.wsf from MDT 2012 SP1 in a ConfigMgr 2012 task sequence. The WSUSServer property is set in the CustomSettings.ini. The task sequence is failing with the following:

Unhandled error returned by ZTIWindowsUpdate: Object doesn't support this property or method (438).

If I look in the WindowsUpdate.log file on the PC, it shows that a particular update failed to download…

MDT Debugging

MDT does a fairly good job of capturing bugs and errors in the client scripts, but the bdd.log may only show limited information in the log file. See my previous post for a full description on what is going on in the background here. In the example above, we can see that the bdd.log is unfortunately showing only error number 483, which isn’t helpful. Running ZTIWindowsUpdate.wsf manually with the /debugcapture switch could get us more information.

Root Cause

We have come across this problem before, and it’s a bug in MDT. It’s been around for a while, but it’s been hard to debug, because it requires a non-trivial set of conditions to occur.

In ZTIWindowsUpdate.wsf we have some logic to verify that all updates were downloaded correctly, if not then we display a warning. Under what conditions would a WSUS server tell a client to install an update, but the client was not able to download the bits? The error from the e-mail suggested an error of: 0x80190194 BG_E_HTTP_ERROR_404 (file not found?!?!) Can I blame the WSUS Server? :^)

For item = 0 to UpdatesToDownload.Count - 1
	If not UpdatesToDownload.Item(item).IsDownloaded then
		oLogging.CreateEntry "    Failed to download: " & UpdatesToDownload.Item(item).Identity.UpdateID & _
			"  result(" & UpdateResult.GetUpdateResult(item).ResultCode & ") : " & UpdatesToDownload.Item(item).Title, MSIT_LogType
	End if
Next

The bug is on line 403, where this line should be changed from:

"  result(" & UpdateResult.GetUpdateResult(item).ResultCode & ") : " & UpdatesToDownload.Item(item).Title, MSIT_LogType

to

"  result(" & UpdateResult.GetProgress.GetUpdateResult(item).ResultCode & ") : " & UpdatesToDownload.Item(item).Title, MSIT_LogType

Had a hard time reproducing this in our labs, so we didn’t get a fix out for MDT 2012 ( or MDT 2012 Update 1 ).
The current MDT team has been aware of this issue, hopefully it can be fixed in the future.

-Keith

Advertisements

8 thoughts on “ZTIWindowsUpdate.wsf errors

  1. I was able to run the ZTIWindowsUpdate and even though the end complained about unable to create the WebService class, the updates downloaded and installed on the workstation. When the same ZTIWindowsUpdate runs from within MDT, content downloads (I see pre and post phases running), though the installation never takes place. The log shows the same error at the tail end – Event 41002 ZTI ERROR Unahandled error returned by ZTIWindowsUpdate: Object doesn’t support his property or method (438).

  2. All-

    I found the following under another post and forum, but forgot where I found it. Anyhow, this resolved my issue with my WSUS updates not installing within the MDT Windows 7 deployments. The download process always worked, but the actual installation always errored out with the ZTIWindowsUpdate.wsf file. In short, line 403 (and below) was changed to read the following:

    oLogging.CreateEntry ” Failed to download: ” & UpdatesToDownload.Item(item).Identity.UpdateID & _

    ” result(” & UpdateResult.GetProgress.GetUpdateResult(item).ResultCode & “) : ” & UpdatesToDownload.Item(item).Title, MSIT_LogType

    In addition to this, I created a task before the Pre-Installation runs in MDT and before the Post-Installation to ensure the time is sync’d up using the run command of net time \\yourdomaincontroller /set /yes

    I hope someone might benefit from the above and again, this came from other post and appears to work just fine.

  3. All-

    I found the following under another post and forum, but forgot where I found it. Anyhow, this resolved my issue with my WSUS updates not installing within the MDT Windows 7 deployments. The download process always worked, but the actual installation always errored out with the ZTIWindowsUpdate.wsf file. In short, line 403 (and below) was changed to read the following:

    oLogging.CreateEntry ” Failed to download: ” & UpdatesToDownload.Item(item).Identity.UpdateID & _

    ” result(” & UpdateResult.GetProgress.GetUpdateResult(item).ResultCode & “) : ” & UpdatesToDownload.Item(item).Title, MSIT_LogType

    In addition to this, I created a task before the Pre-Application Installation runs in MDT and before the Post-Application Installation to ensure the time is sync’d up using the run command of net time \\yourdomaincontroller /set /yes

    I hope someone might benefit from the above and again, this came from other post and appears to work just fine.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s