Skip navigation
2879 Views 6 Replies Latest reply: May 4, 2012 3:23 AM by Frank Wils RSS
Rookie 6 posts since
Mar 10, 2009

Has received 1 of 9 achievements.
Currently Being Moderated

May 1, 2012 7:59 AM

Sysprep Windows 7 Activation Question

Hello everyone

 

I'm new to Sysprep and have been reading everything I can to get up to speed for Win7 image deployment using LDMS9 SP3 in a corporate environment.  So far, following the articles here, I've been able to capture and deploy a windows 7 image (but am working out some kinks).

 

One question that has come up involves Windows 7 Activation.  We use enterprise MAK licenses (not KMS or OEM licenses), so we have a total of 3 resets for Windows Activation.

 

For Windows XP, our process for updating our images has been to retain the hard drive we captured the image from so we can update it and recapture the image later (we use NewSID after deployment rather than Sysprep, which is why Sysprep is new to me).

 

However, it appears this process may not work for Windows 7 due to the reset limitation for Windows Activation.

 

What I have done as a test for Windows 7 is load the OS on a machine and install our additional required corporate software.  Then I ran Sysprep using OOBE and generalize.  Finally I captured the image, then deployed the image to another machine.

 

How do I update this image later without running out of activation resets?  Do I need to deploy the image to a machine, update it, then OOBE/generalize it and recapture it?  Will that work?  Is there a way to use the original image I captured (if I retain the hard drive)?

 

Thank you for all your help! 

  • Frank Wils SSMMVPGroup 1,212 posts since
    Feb 25, 2008

    Has received 8 of 9 achievements.
    Currently Being Moderated
    1. May 1, 2012 9:07 AM (in response to Kelson)
    Re: Sysprep Windows 7 Activation Question

    Hi!

     

    Easiest way probably is to use a Virtual Machine and snapshot it right before sysprep. That way you can restore to right before the re-arm and build on that.

     

    Otherwise you can use run sysprep referencing an unattend.xml file with an entry telling sysprep to skip the re-arm,

     

    for example: sysprep.exe /oobe /generalize /unattend:"c:\unattend.xml" /quit

     

    This unattend.xml file should contain at least the following:

     

    <settings pass="generalize">

    <component name="Microsoft-Windows-Security-SPP" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

    <SkipRearm>1</SkipRearm>

    </component>

    </settings>

     

    Make sure to delete this xml before the unattended setup runs because it might interfere with the settings you inject during OSD.

     

    Windows will skip the re-arm, but during the OSD process you can run the re-activation which will make the MAK or KMS key still unique to that device.

     

    As you say, Windows out-of-the-box can re-arm only 3 times, but if accidentally that happens to you, you can still recover the image and run the sysprep again by doing the following.

     

    Generally, you will receive errors in the setupact.log and setuperr.log files like these:

    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

    Error [0x0f0082] SYSPRP LaunchDll: Failure occurred while executing 'C:\Windows\System32\slc.dll, SLReArmWindows', returned error code -1073425657

    Error [0x0f0070] SYSPRP RunExternalDlls: An error occurred while running registry sysprep DLLs, halting sysprep execution. dwRet = -1073425657

    Error [0x0f00a8] SYSPRP WinMain: Hit failure while processing sysprep generalize providers; hr = 0xc004d307

     

    To remedy this, do the following

     

    Open regedit and look for:

    HKEY_LOCAL_MACHINE\SYSTEM\Setup\Status\SysprepStatus\CleanupState\

    Set to value: 2


    HKEY_LOCAL_MACHINE\SYSTEM\Setup\Status\SysprepStatus\GeneralizationState\

    Set to value: 7

     

    Than:

    msdtc -uninstall (wait a few seconds)

    msdtc -install (wait a few seconds)

    Reboot the system.

    Now you can run sysprep again.

     

    Frank

    Axle-IT

  • Frank Wils SSMMVPGroup 1,212 posts since
    Feb 25, 2008

    Has received 8 of 9 achievements.
    Currently Being Moderated
    5. May 4, 2012 3:21 AM (in response to Kelson)
    Re: Sysprep Windows 7 Activation Question

    You're welcome. :) The registry key you found is the same that is temporary set by the unattend.xml setting i referenced. The msdtc install/uninstall is not always necessary, it depends on the exact error you get.

     

    Frank

  • Frank Wils SSMMVPGroup 1,212 posts since
    Feb 25, 2008

    Has received 8 of 9 achievements.
    Currently Being Moderated
    6. May 4, 2012 3:23 AM (in response to Frank Wils)
    Re: Sysprep Windows 7 Activation Question

    Ah, please mark the question as answered also.

     

    Thanks!

    Frank

More Like This

  • Retrieving data ...

Bookmarked By (2)

Legend

  • Correct Answers - 20 points
  • Helpful Answers - 10 points
LANDESK Community powered by Jive SBS® 4.5.7.1  |  Legal Notices  |  Privacy Policy  |  Icon 

TweeterOn Twitter  |  Icon FacebookOn Facebook © 2007 LANDESK Software