web-dev-qa-db-ja.com

MicrosoftMDTを使用してInternetExplorer 10 x64 sysprepを修正する方法は?

Internet Explorer 10がインストールされている場合、sysprep後の起動時にWindows 7x64が失敗します。 これはsgennadiによって投稿された のような多くの投稿は、レジストリの回避策を提供します。

Microsoft Development ToolkitのWIMインストール(Unattend.xmlのパッケージ更新と共に)を使用して、一般化手順の前またはIE10更新パッケージのインストールの直後に変更を適用するにはどうすればよいですか?

2
Velcro

私はなんとかそれを機能させることができました。

Lite Touchのインストールでは、Install Operating Systemタスクシーケンスが必要です。このTSは、SCRIPTROOTフォルダーにあるLTIApply.wsfファイルによって処理されます。 Internet Explorer 10 x64をSysprepで動作させるには、DISM.exeプロセスの直後にVBScriptコードを追加する必要があります。

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
1
Velcro