如何使用 Microsoft MDT 修复 Internet Explorer 10 x64 sysprep?

如何使用 Microsoft MDT 修复 Internet Explorer 10 x64 sysprep?

安装 Internet Explorer 10 后,Windows 7 x64 在 sysprep 后启动失败。许多帖子,例如这是 sgennadi 发的,给出一个注册表解决方法。

使用 Microsoft Development Toolkit 中的 WIM 安装(以及 Unattend.xml 中的包更新),如何在通用步骤之前或 IE10 更新包安装之后应用更改?

答案1

我设法让它工作起来。

在 Lite Touch 安装中,您必须有一个任务序列。此 TS 由位于您文件夹中的文件Install Operating System处理。要使 Internet Explorer 10 x64 与 Sysprep 配合使用,您必须在 DISM.exe 进程之后添加一些 VBScript 代码:LTIApply.wsfSCRIPTROOT

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

相关内容