Como corrigir o sysprep do Internet Explorer 10 x64 usando o Microsoft MDT?

2

O Windows 7 x64 falha na inicialização após o sysprep quando o Internet Explorer 10 é instalado. Muitos posts, como este postado por sgennadi , forneça uma solução alternativa de registro.

Usando a instalação do WIM no Microsoft Development Toolkit (junto com a atualização do pacote no Unattend.xml), como posso aplicar a alteração antes da etapa de generalização ou logo após a instalação do pacote de atualização do IE10?

    
por Velcro 28.05.2013 / 15:33

1 resposta

1

Consegui fazê-lo funcionar.

Na instalação do Lite Touch, você deve ter uma sequência de tarefas Install Operating System . Este TS é processado pelo arquivo LTIApply.wsf localizado na sua pasta SCRIPTROOT . Para tornar o Internet Explorer 10 x64 para trabalhar com o Sysprep, você deve adicionar algum código VBScript logo após o processo DISM.exe:

Function ApplyUnattend

    Dim iRC
    Dim sFileName
    Dim oFile


    ' Create the scratch folder (needed for servicing)

    oUtility.VerifyPathExists oUtility.LocalRootPath & "\Scratch"
    oLogging.CreateEntry "Created scratch folder.", LogTypeInfo


    ' Copy the unattend.xml into the Panther folder (looks like DISM doesn't do this)

    oUtility.VerifyPathExists sDestinationDrive & "\Windows\Panther\Unattend"
    oFileHandling.CopyFile oUtility.LocalRootPath & "\unattend.xml", sDestinationDrive & "\Windows\Panther\Unattend.xml", true
    oLogging.CreateEntry "Copied unattend.xml to " & sDestinationDrive & "\Windows\Panther for image apply.", LogTypeInfo


    ' Apply the unattend.xml.  This takes care of driver injection and servicing (patch, LP, etc.)  Do this from the Panther folder
    ' so that the \Drivers relative path in the unattend.xml works properly.

    oLogging.ReportProgress "Applying unattend.xml with DISM.EXE.", 80
    iRC = oUtility.RunWithConsoleLogging("dism.exe /Image:" & sDestinationDrive & "\ /Apply-Unattend:" & sDestinationDrive & "\Windows\Panther\Unattend.xml /ScratchDir:" & oUtility.LocalRootPath & "\Scratch")
    TestAndFail iRc, 5627, "Run DISM.exe"


    '''''''' Internet Explorer x64 Sysprep Fix ''''''''


    oLogging.ReportProgress "Applying IE10 x64 registry hack.", 80

    ' Loads SOFTWARE hive into registry
    '
    oUtility.RunWithConsoleLogging(sDestinationDrive & "\Windows\System32\reg load HKLM\TempHive " & sDestinationDrive & "\Windows\System32\config\SOFTWARE")

    ' Create a temp file with the script that regini.exe will use
    '
    sFileName = oFSO.GetTempName
    set oFile = oFSO.CreateTextFile(sFileName)
    oFile.WriteLine "HKEY_LOCAL_MACHINE\TempHive\Microsoft\Windows\CurrentVersion\Setup\Sysprep\Cleanup [1 5 7 11 17]"
    oFile.WriteLine "HKEY_LOCAL_MACHINE\TempHive\Microsoft\Windows\CurrentVersion\Setup\Sysprep\Generalize [1 5 7 11 17]"
    oFile.WriteLine "HKEY_LOCAL_MACHINE\TempHive\Microsoft\Windows\CurrentVersion\Setup\Sysprep\Specialize [1 5 7 11 17]"
    oFile.Close

    ' Change registry permissions with regini.exe
    '
    oUtility.RunWithConsoleLogging(sDestinationDrive & "\Windows\System32\regini " & sFileName)

    ' Fix registry paths
    '
    oShell.RegWrite "HKLM\TempHive\Microsoft\Windows\CurrentVersion\Setup\Sysprep\Cleanup\{EC9FE15D-99DD-4FB9-90D5-5B56E42A0F80}", "C:\Windows\System32\iesysprep.dll,Sysprep_Cleanup_IE"
    oShell.RegWrite "HKLM\TempHive\Microsoft\Windows\CurrentVersion\Setup\Sysprep\Generalize\{EC9FE15D-99DD-4FB9-90D5-CE53C91AB9A1}", "C:\Windows\System32\iesysprep.dll,Sysprep_Generalize_IE"
    oShell.RegWrite "HKLM\TempHive\Microsoft\Windows\CurrentVersion\Setup\Sysprep\Specialize\{EC9FE15D-99DD-4FB9-90D5-676C338DC1DA}", "C:\Windows\System32\iesysprep.dll,Sysprep_Specialize_IE"

    ' Delete temp file
    '
    oFSO.DeleteFile sFileName

    ' Unloads SOFTWARE hive from registry
    '
    oUtility.RunWithConsoleLogging(sDestinationDrive & "\Windows\System32\reg unload HKLM\TempHive")


    '''''''' Internet Explorer x64 Sysprep Fix ''''''''




End Function
    
por 31.05.2013 / 17:43