Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

Support for Service Pack 2 for Windows Vista and for Windows Server 2008 is not included in Microsoft Deployment Toolkit 2008 Update 1


View products that this article applies to.

Symptoms

After you import Windows Vista Service Pack 2 (SP2) or Windows Server 2008 Service Pack 2 into Microsoft Deployment Toolkit 2008 Update 1, you notice a lack of support for Service Pack 2 in the Microsoft Deployment Toolkit. This includes a lack of support for Service Pack 2 in the Supported Platforms list and the lack of language packs during Lite Touch deployment.

↑ Back to the top


Cause

Microsoft Deployment Toolkit 2008 Update 1 was released before the Service Pack 2 release. Therefore, Deployment Toolkit 2008 Update 1 does not include support for Windows Vista SP2 and for Windows Server 2008 SP2.

↑ Back to the top


Workaround

To work around this problem, administrators can manually add Service Pack 2 support to the Microsoft Deployment Toolkit by updating the ZTISupportedPlatforms.xml and DeployWiz_Initialization.vbs files.

Supported platforms fix

To add support for Windows Vista SP2 and for Windows Server 2008 SP2 in the Supported Platforms list, add the following entries to the ZTISupportedPlatforms.xml file:
<SupportedPlatform name="x86 Windows Vista Service Pack 2">
       <Expression><![CDATA[SELECT * FROM Win32_OperatingSystem WHERE Version like '6.0%' AND OSType=18 AND ServicePackMajorVersion = 2 AND ProductType=1]]></Expression>
       <Expression><![CDATA[SELECT * FROM Win32_OperatingSystem WHERE OSArchitecture like '32%']]></Expression>
</SupportedPlatform>
<SupportedPlatform name="x64 Windows Vista Service Pack 2">
       <Expression><![CDATA[SELECT * FROM Win32_OperatingSystem WHERE Version like '6.0%' AND OSType=18 AND ServicePackMajorVersion = 2 AND ProductType=1]]></Expression>
       <Expression><![CDATA[SELECT * FROM Win32_OperatingSystem WHERE OSArchitecture like '64%']]></Expression>	
</SupportedPlatform>
<SupportedPlatform name="x86 Windows Server 2008 Service Pack 2">
       <Expression><![CDATA[SELECT * FROM Win32_OperatingSystem WHERE Version like '6.0%' AND OSType=18 AND ServicePackMajorVersion = 2 AND ProductType>1]]></Expression>
       <Expression><![CDATA[SELECT * FROM Win32_OperatingSystem WHERE OSArchitecture like '32%']]></Expression>
</SupportedPlatform>
<SupportedPlatform name="x64 Windows Server 2008 Service Pack 2">
       <Expression><![CDATA[SELECT * FROM Win32_OperatingSystem WHERE Version like '6.0%' AND OSType=18 AND ServicePackMajorVersion = 2 AND ProductType>1]]></Expression>
       <Expression><![CDATA[SELECT * FROM Win32_OperatingSystem WHERE OSArchitecture like '64%']]></Expression>
</SupportedPlatform>
Notice that the ZTISupportedPlatforms.xml file may exist in multiple locations. For example, if you installed Microsoft Deployment Toolkit 2008 Update 1 in the C:\program Files\Microsoft Deployment Toolkit directory, and you created a Lab deployment share in the C:\distribution directory, you might find that the file is also located in the following directories:
C:\Distribution\Scripts\ZTISupportedPlatforms.xml
C:\Program Files\Microsoft Deployment Toolkit\Scripts\ZTISupportedPlatforms.xml
C:\Program Files\Microsoft Deployment Toolkit\Templates\Distribution\Scripts\ZTISupportedPlatforms.xml

Language pack handling

To add support for Windows Vista SP2 and Windows Server 2008 SP2 language packs, manually edit the DeployWiz_Initialization.vbs file, and then replace the existing ConstructLPQuery() function with the following text:
Function ConstructLPQuery ( isLangPack )

       Dim Keyword
       Dim isServer
       Dim ImgBuild
       Dim SPVersion
       Dim LPQuery
       Dim LPVersion
       Dim i

       isServer  = inStr(1,oEnvironment.Item("ImageFlags"),"SERVER",vbTextCompare) <> 0
       ImgBuild  = oEnvironment.Item("ImageBuild")

       If not isLangPack then
              LPQuery = "Type != 'LanguagePack' and (ProductVersion = '" & ImgBuild & "' or ProductVersion = '') "
       ElseIf isServer and left(ImgBuild,4) = "6.0." then
              ' All Windows Vista Language Packs use Product Version 6.0.6001.18000.
              LPQuery = "Type = 'LanguagePack' and Name = 'Microsoft-Windows-Server-LanguagePack-Package' and  ProductVersion = '6.0.6001.18000' "
       ElseIf left(ImgBuild,4) = "6.0." then
              ' All Windows Server 2008 Language Packs use Product Version 6.0.6000.16386.
              LPQuery = "Type = 'LanguagePack' and Name = 'Microsoft-Windows-Client-LanguagePack-Package' and  ProductVersion = '6.0.6000.16386' "
       ElseIf isServer then
              LPQuery = "Type = 'LanguagePack' and Name = 'Microsoft-Windows-Server-LanguagePack-Package' and  ProductVersion = '" & ImgBuild & "' "
       Else
              LPQuery = "Type = 'LanguagePack' and Name = 'Microsoft-Windows-Client-LanguagePack-Package' and  ProductVersion = '" & ImgBuild & "' "
       End if

       If left(ImgBuild,4) = "6.0." then
              LPVersion = Mid(ImgBuild,8,1)
              If IsNumeric(LPVersion) and LPVersion > 0 then
                     ' Exclude all Language Packs that are less than the Current OS.
                     LPQuery = LPQuery & " and Keyword != 'Language Pack'"
                     For i = 2 to LPVersion
                           LPQuery = LPQuery & " and Keyword != 'SP" & (LPVersion - 1) & " Language Pack'"
                     Next
              End if
       ElseIf IsServer then
              ' Windows Server 2008 R2 Beta 1 uses SP1.
              LPQuery = LPQuery & " and (Keyword = 'Language Pack' or Keyword = 'SP1 Language Pack' )"
       Else
              ' Windows 7 defined as RTM.
              LPQuery = LPQuery & " and (Keyword = 'Language Pack')"
       End if

       If UCase(oEnvironment.Item("ImageProcessor")) = "X64" then
              LPQuery = "//packages/package[ProcessorArchitecture = 'amd64' and " & LPQuery & "]"
       Else
              LPQuery = "//packages/package[ProcessorArchitecture = 'x86' and " & LPQuery & "]"
       End if

       oLogging.CreateEntry vbTab & "QUERY: " & LPQuery, LogTypeInfo
       ConstructLPQuery = LPQuery

End function 
Notice that the DeployWiz_Initialization.vbs file may exist in multiple locations. For example, if you installed Microsoft Deployment Toolkit 2008 Update 1 in the C:\program Files\Microsoft Deployment Toolkit directory, and you created a Lab deployment share in the C:\distribution directory, you might find that the file is also located in the following directories:
C:\Distribution\Scripts\DeployWiz_Initialization.vbs
C:\Program Files\Microsoft Deployment Toolkit\Templates\Distribution\Scripts\DeployWiz_Initialization.vbs

↑ Back to the top


Status

Microsoft has confirmed that Microsoft Deployment Toolkit 2008 Update 1 does not provide support for Windows Vista SP2 and for Windows Server 2008 SP2. The methods that are described in the "Workaround" section add support for Windows Vista SP2 and for Windows Server 2008 SP2 to Microsoft Deployment Toolkit 2008 Update 1.

↑ Back to the top


Note This is a "FAST PUBLISH" article created directly from within the Microsoft support organization. The information contained herein is provided as-is in response to emerging issues. As a result of the speed in making it available, the materials may include typographical errors and may be revised at any time without notice. See Terms of Use for other considerations.

↑ Back to the top


Keywords: KB971943, kbprb, kbsurveynew, kbtshoot, kbexpertiseinter, kbarchive, kbnosurvey

↑ Back to the top

Article Info
Article ID : 971943
Revision : 1
Created on : 1/16/2015
Published on : 1/16/2015
Exists online : False
Views : 507