none
Sysprep Fails on msdtcprx.dll

    Question

  • Hey all,

    Having trouble getting a Windows 7 install to sysprep for eventual imaging.  Sysprep errors out with the popular "Fatal Error."  Logs Posted Below:

    Setupact.log:

    2012-01-05 08:45:43, Info                  SYSPRP ========================================================
    2012-01-05 08:45:43, Info                  SYSPRP ===          Beginning of a new sysprep run          ===
    2012-01-05 08:45:43, Info                  SYSPRP ========================================================
    2012-01-05 08:45:43, Info       [0x0f004d] SYSPRP The time is now 2012-01-05 08:45:43
    2012-01-05 08:45:43, Info       [0x0f004e] SYSPRP Initialized SysPrep log at C:\Windows\System32\sysprep\Panther
    2012-01-05 08:45:43, Info       [0x0f0054] SYSPRP ValidateUser:User has required privileges to sysprep machine
    2012-01-05 08:45:43, Info       [0x0f007e] SYSPRP FCreateTagFile:Tag file C:\Windows\System32\sysprep\Sysprep_succeeded.tag does not already exist, no need to delete anything
    2012-01-05 08:45:43, Info       [0x0f005f] SYSPRP ParseCommands:Found supported command line option 'GENERALIZE'
    2012-01-05 08:45:43, Info       [0x0f005f] SYSPRP ParseCommands:Found supported command line option 'OOBE'
    2012-01-05 08:45:43, Info       [0x0f005f] SYSPRP ParseCommands:Found supported command line option 'QUIT'
    2012-01-05 08:45:43, Info       [0x0f005f] SYSPRP ParseCommands:Found supported command line option 'UNATTEND'
    2012-01-05 08:45:43, Info       [0x0f004a] SYSPRP WaitThread:Entering spawned waiting thread
    2012-01-05 08:45:43, Info                         [sysprep.exe] UnattendFindAnswerFile: Looking at explicitly provided unattend file [c:\unattended.xml]...
    2012-01-05 08:45:43, Info                         [sysprep.exe] UnattendFindAnswerFile: [c:\unattended.xml] meets criteria for an explicitly provided unattend file.
    2012-01-05 08:45:43, Info                  SYSPRP SysprepSearchForUnattend: Using unattend file at [c:\unattended.xml].
    2012-01-05 08:45:43, Info                  SYSPRP SysprepSearchForUnattend: [generalize] pass in unattend file [c:\unattended.xml] either doesn't exist or passed validation
    2012-01-05 08:45:43, Info                  SYSPRP WinMain:Found unattend file at [c:\unattended.xml]; caching...
    2012-01-05 08:45:43, Info                  SYSPRP WinMain:Processing unattend file's 'generalize' pass...
    2012-01-05 08:45:43, Info                  SYSPRP Sysprep is running a generalize pass with the following unattend file: [%windir%\panther\unattend.xml]
    2012-01-05 08:45:43, Info                  CSI    00000001@2012/1/5:16:45:43.842 WcpInitialize (wcp.dll version 0.0.0.6) called (stack @0x6b3ede79 @0x6518e2d6 @0x651a0018 @0x6517adf1 @0x6517a984 @0x2eedf)
    2012-01-05 08:45:43, Info                         [sysprep.exe] [Action Queue] : GenerateActionQueue begin
    2012-01-05 08:45:43, Info                         [sysprep.exe] [Action Queue] : Processing pass = generalize
    2012-01-05 08:45:43, Info                         [sysprep.exe] [Action Queue] : Generating queue file to C:\Windows\panther\actionqueue\generalize.uaq
    2012-01-05 08:45:43, Info                         [sysprep.exe] [Action Queue] : Identity 0: Microsoft-Windows-Security-SPP, Culture=neutral, Version=6.1.7600.16385, PublicKeyToken=31bf3856ad364e35, ProcessorArchitecture=x86, versionScope=NonSxS
    2012-01-05 08:45:43, Info                         [sysprep.exe] [Action Queue] : Using component order file C:\Windows\winsxs\x86_microsoft-windows-servicingstack_31bf3856ad364e35_6.1.7601.17592_none_0b0e4b4025cf4049\GlobalInstallOrder.xml
    2012-01-05 08:45:43, Info                  CSI    00000001@2012/1/5:16:45:43.936 WcpInitialize (wcp.dll version 0.0.0.6) called (stack @0x6b3ede79 @0x651eec4d @0x651eecfd @0x651ee144 @0x651eea4b @0x2ecdc)
    2012-01-05 08:45:44, Info                         [sysprep.exe] [Action Queue] : Found manifest file C:\Windows\Winsxs\Manifests\x86_microsoft-windows-security-spp_31bf3856ad364e35_6.1.7600.16385_none_1a37ad9b82468857.manifest
    2012-01-05 08:45:44, Info                         [sysprep.exe] [Action Queue] : GenerateActionQueue finish (hr = 0x0)
    2012-01-05 08:45:44, Info                         [sysprep.exe] [Action Queue] : ProcessActionQueue start
    2012-01-05 08:45:44, Info                         [sysprep.exe] [Action Queue] : ProcessActionQueue using queue file C:\Windows\panther\actionqueue\generalize.uaq
    2012-01-05 08:45:44, Info                         [sysprep.exe] [Action Queue] : ProcessActionQueue finish (hr = 0x0)
    2012-01-05 08:45:45, Info                  SYSPRP RunUnattendGeneralizePass: Sysprep unattend generalize pass exits; hr = 0x0, hrResult = 0x0, bRebootRequired = 0x0
    2012-01-05 08:45:46, Info       [0x0f00ac] SYSPRP WinMain:Processing 'cleanup' external provider request.
    2012-01-05 08:45:46, Info       [0x0f006c] SYSPRP RunExternalDlls:Running DLLs listed in registry for phase 3
    2012-01-05 08:45:46, Info       [0x0f008a] SYSPRP RunRegistryDlls:Retrieved section name for this phase as Cleanup
    2012-01-05 08:45:46, Warning    [0x0f008f] SYSPRP RunRegistryDlls:Registry key is either empty or malformed: SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\SysPrepExternal\Cleanup
    2012-01-05 08:45:46, Info       [0x0f00ad] SYSPRP WinMain:Processing 'generalize' extrenal provider request.
    2012-01-05 08:45:46, Info       [0x0f006c] SYSPRP RunExternalDlls:Running DLLs listed in registry for phase 1
    2012-01-05 08:45:46, Info       [0x0f008a] SYSPRP RunRegistryDlls:Retrieved section name for this phase as Generalize
    2012-01-05 08:45:46, Warning    [0x0f008f] SYSPRP RunRegistryDlls:Registry key is either empty or malformed: SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\SysPrepExternal\Generalize
    2012-01-05 08:45:46, Info       [0x0f003f] SYSPRP WinMain:Processing 'cleanup' internal provider request.
    2012-01-05 08:45:46, Info       [0x0f006c] SYSPRP RunExternalDlls:Running DLLs listed in registry for phase 3
    2012-01-05 08:45:46, Info       [0x0f008a] SYSPRP RunRegistryDlls:Retrieved section name for this phase as Cleanup
    2012-01-05 08:45:46, Info       [0x0f008b] SYSPRP RunRegistryDlls:Found entrypoint in registry at SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\SysPrep\Cleanup\{cdcc0c8d-b72c-212f-f9a8-572bb66ac5ae}; will try to launch 'C:\Windows\System32\LangCleanupSysprepAction.dll,Sysprep_Generalize_MUILangCleanup'
    2012-01-05 08:45:46, Info       [0x0f0080] SYSPRP LaunchDll:Found 'C:\Windows\System32\LangCleanupSysprepAction.dll,Sysprep_Generalize_MUILangCleanup'; executing it
    2012-01-05 08:45:46, Info                  SYSPRP Sysprep_Generalize_MUILangCleanup Start.
    2012-01-05 08:45:46, Info                  SYSPRP Disabling CMF cache SUCCEEDED
    2012-01-05 08:45:46, Info                  SYSPRP Removing scheduled task for running lpremove.exe and all related data
    2012-01-05 08:45:46, Info                  SYSPRP Removing scheduled task for lpremove.exe succeeed
    2012-01-05 08:45:46, Info                  SYSPRP Removing MUIUnattend-OOBE handshake value
    2012-01-05 08:45:46, Info                  SYSPRP MUIUnattend-OOBE handshake value is not present on the system
    2012-01-05 08:45:46, Info                  SYSPRP Sysprep_Generalize_MUILangCleanup End.
    2012-01-05 08:45:46, Info       [0x0f0081] SYSPRP LaunchDll:Successfully executed 'C:\Windows\System32\LangCleanupSysprepAction.dll,Sysprep_Generalize_MUILangCleanup' without error
    2012-01-05 08:45:46, Info       [0x0f008b] SYSPRP RunRegistryDlls:Found entrypoint in registry at SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\SysPrep\Cleanup\{c15690f3-5908-1929-16d3-ec814bdc5adc}; will try to launch 'C:\Windows\system32\msdtcprx.dll,SysPrepDtcCleanup'
    2012-01-05 08:45:46, Info       [0x0f0080] SYSPRP LaunchDll:Found 'C:\Windows\system32\msdtcprx.dll,SysPrepDtcCleanup'; executing it
    2012-01-05 08:45:46, Error      [0x0f0082] SYSPRP LaunchDll:Failure occurred while executing 'C:\Windows\system32\msdtcprx.dll,SysPrepDtcCleanup', returned error code -2146434815[gle=0x000000b7]
    2012-01-05 08:45:46, Error      [0x0f0070] SYSPRP RunExternalDlls:An error occurred while running registry sysprep DLLs, halting sysprep execution. dwRet = -2146434815[gle=0x000000b7]
    2012-01-05 08:45:46, Error      [0x0f00a8] SYSPRP WinMain:Hit failure while processing sysprep cleanup providers; hr = 0x80100101[gle=0x000000b7]
    2012-01-05 08:45:50, Info       [0x0f004c] SYSPRP WaitThread:Exiting spawned waiting thread
    2012-01-05 08:45:50, Info       [0x0f0052] SYSPRP Shutting down SysPrep log
    2012-01-05 08:45:50, Info       [0x0f004d] SYSPRP The time is now 2012-01-05 08:45:50

     

    Setuperr.log

    2012-01-05 08:45:46, Error      [0x0f0082] SYSPRP LaunchDll:Failure occurred while executing 'C:\Windows\system32\msdtcprx.dll,SysPrepDtcCleanup', returned error code -2146434815[gle=0x000000b7]
    2012-01-05 08:45:46, Error      [0x0f0070] SYSPRP RunExternalDlls:An error occurred while running registry sysprep DLLs, halting sysprep execution. dwRet = -2146434815[gle=0x000000b7]
    2012-01-05 08:45:46, Error      [0x0f00a8] SYSPRP WinMain:Hit failure while processing sysprep cleanup providers; hr = 0x80100101[gle=0x000000b7]

     

    There are a couple of warnings regarding missing and/or malformed registy keys related to sysprep.  Could be from the previous attempt to sysprep that failed with the same results.  I reset the Generalize state back to '7' and did a msdtc -uninstall/-install.  Anything I am missing here? 

    Thanks!

    -Matt

     

    Thursday, January 05, 2012 5:48 PM

All replies

  • I'm getting the same 3 errors. Win 7 Enterprise 64bit. I'm running:

    sysprep /audit /generalize /shutdown /unattend:e:\64bit_unattend.xml

    Friday, January 06, 2012 11:04 PM
  • Not sure why you use audit mode, we usually just use oobe mode.
    Thanks

    Zero

    Saturday, January 07, 2012 11:56 AM
  • Possible cause:
    MSDTC is corrupted and SYSPrepDtcCleanup is unable to reset the dtc logs.

    Solution:
    Reset MSDTC by uninstalling it and reinstall it.
    Thanks

    Zero

    Saturday, January 07, 2012 12:04 PM
  • Possible cause:
    MSDTC is corrupted and SYSPrepDtcCleanup is unable to reset the dtc logs.

    Solution:
    Reset MSDTC by uninstalling it and reinstall it.
    Thanks

    Zero


    Thanks for the reply! I ran msdtc -uninstall and then msdtc -install and then ran sysprep again. It got further but errored again with a new error:

    2012-01-09 07:40:25, Error      [0x0f0082] SYSPRP LaunchDll:Failure occurred while executing 'C:\Windows\system32\msdtcprx.dll,SysPrepDtcCleanup', returned error code -2146434815[gle=0x000000b7]
    2012-01-09 07:40:25, Error      [0x0f0070] SYSPRP RunExternalDlls:An error occurred while running registry sysprep DLLs, halting sysprep execution. dwRet = -2146434815[gle=0x000000b7]
    2012-01-09 07:40:25, Error      [0x0f00a8] SYSPRP WinMain:Hit failure while processing sysprep cleanup providers; hr = 0x80100101[gle=0x000000b7]
    2012-01-09 07:45:02, Error                 SYSPRP WindowsSideShow: Failed to get task folder (0x80070003)
    2012-01-09 07:45:02, Error      [0x0f0082] SYSPRP LaunchDll:Failure occurred while executing 'C:\Windows\System32\AuxiliaryDisplayClassInstaller.dll,WindowsSideShow_Sysprep_Generalize', returned error code 31
    2012-01-09 07:45:02, Error      [0x0f0070] SYSPRP RunExternalDlls:An error occurred while running registry sysprep DLLs, halting sysprep execution. dwRet = 31
    2012-01-09 07:45:02, Error      [0x0f00a8] SYSPRP WinMain:Hit failure while processing sysprep generalize internal providers; hr = 0x8007001f 

    I don't know what WindowsSideShow is. I don't the widget bar enabled as I have Aero turned off. Windows display performance is set to "Best performance".

    Monday, January 09, 2012 3:49 PM
  • 2012-01-09 08:06:04, Error      [0x0f0082] SYSPRP LaunchDll:Failure occurred while executing 'C:\Windows\system32\msdtcprx.dll,SysPrepDtcCleanup', returned error code -2146434815[gle=0x000000b7]
    2012-01-09 08:06:04, Error      [0x0f0070] SYSPRP RunExternalDlls:An error occurred while running registry sysprep DLLs, halting sysprep execution. dwRet = -2146434815[gle=0x000000b7]
    2012-01-09 08:06:04, Error      [0x0f00a8] SYSPRP WinMain:Hit failure while processing sysprep cleanup providers; hr = 0x80100101[gle=0x000000b7]
    

    Possible cause:
    MSDTC is corrupted and SYSPrepDtcCleanup is unable to reset the dtc logs.

    Solution:
    Reset MSDTC by uninstalling it and reinstall it.
    Thanks

    Zero


    Thanks for the reply! I ran msdtc -uninstall and then msdtc -install and then ran sysprep again. It got further but errored again with a new error:

    2012-01-09 07:40:25, Error      [0x0f0082] SYSPRP LaunchDll:Failure occurred while executing 'C:\Windows\system32\msdtcprx.dll,SysPrepDtcCleanup', returned error code -2146434815[gle=0x000000b7]
    2012-01-09 07:40:25, Error      [0x0f0070] SYSPRP RunExternalDlls:An error occurred while running registry sysprep DLLs, halting sysprep execution. dwRet = -2146434815[gle=0x000000b7]
    2012-01-09 07:40:25, Error      [0x0f00a8] SYSPRP WinMain:Hit failure while processing sysprep cleanup providers; hr = 0x80100101[gle=0x000000b7]
    2012-01-09 07:45:02, Error                 SYSPRP WindowsSideShow: Failed to get task folder (0x80070003)
    2012-01-09 07:45:02, Error      [0x0f0082] SYSPRP LaunchDll:Failure occurred while executing 'C:\Windows\System32\AuxiliaryDisplayClassInstaller.dll,WindowsSideShow_Sysprep_Generalize', returned error code 31
    2012-01-09 07:45:02, Error      [0x0f0070] SYSPRP RunExternalDlls:An error occurred while running registry sysprep DLLs, halting sysprep execution. dwRet = 31
    2012-01-09 07:45:02, Error      [0x0f00a8] SYSPRP WinMain:Hit failure while processing sysprep generalize internal providers; hr = 0x8007001f 

    I don't know what WindowsSideShow is. I don't the widget bar enabled as I have Aero turned off. Windows display performance is set to "Best performance".


    I decided to run a chkdsk c: /f and then reboot. The system seemed to do some sysprep items as it booted back up after the chkdsk as it said it was updating the registry.

    I ran sysprep again and got this error:

    2012-01-09 08:04:53, Error      [0x0f0073] SYSPRP RunExternalDlls:Not running DLLs; either the machine is in an invalid state or we couldn't update the recorded state, dwRet = 31
    2012-01-09 08:04:53, Error      [0x0f00ae] SYSPRP WinMain:Hit failure while processing sysprep cleanup external providers; hr = 0x8007001f
    

     

    So I deleted the registry key HKLM\SYSTEM\Setup\Status\SysprepStatus and then ran sysprep again. This time I got the original errors once more:

    2012-01-09 08:06:04, Error      [0x0f0082] SYSPRP LaunchDll:Failure occurred while executing 'C:\Windows\system32\msdtcprx.dll,SysPrepDtcCleanup', returned error code -2146434815[gle=0x000000b7]
    2012-01-09 08:06:04, Error      [0x0f0070] SYSPRP RunExternalDlls:An error occurred while running registry sysprep DLLs, halting sysprep execution. dwRet = -2146434815[gle=0x000000b7]
    2012-01-09 08:06:04, Error      [0x0f00a8] SYSPRP WinMain:Hit failure while processing sysprep cleanup providers; hr = 0x80100101[gle=0x000000b7]
    
    

     

    Monday, January 09, 2012 4:11 PM
  • I found that my error related to msdtc is because I was deleting the SysprepStatus key. Uninstalling msdtc and installing it again fixes that which brings me back to another error regarding the windows sideshow. I'll make another thread for that error.
    Monday, January 09, 2012 10:14 PM
  • Possible cause:
    MSDTC is corrupted and SYSPrepDtcCleanup is unable to reset the dtc logs.

    Solution:
    Reset MSDTC by uninstalling it and reinstall it.
    Thanks

    Zero


    As indicated in my original post, I had already done this, but I still got the error.  At this point, I have started with a new image (again) and I am making back-up images before making sysprep runs after each application I install. If the sysprep succeeds (which is has so far) I restore the backup image prior to running the sysprep.  It's rather laborious, but I can't think of any other solution.
    • Edited by Otakuon Tuesday, January 10, 2012 6:21 PM
    Tuesday, January 10, 2012 6:20 PM
  • Thanks for this solution!!!  msdtc -uninstall and then msdtc -install fixed the issue and I was able to sysprep after that.

    Server 2008 R2 SP1

    Wednesday, February 15, 2012 8:19 PM