There seem to be quite much confusion on how CopyProfile works in Windows 7. The major source for the confusion is that the Windows AIK documentation is incorrect. I felt it was about to write a post on how it really works 🙂
The scenario is that you want make configurations to the default user profile. The CopyProfile feature in the unattend.xml file is just one of many ways to do that. In the Resources section I have put links to other methods, not covered in this post.
In the Windows 7 unattend.xml there is a CopyProfile value you can set to true. If you set the CopyProfile to True in the Specialize Pass of the unattend.xml file used to deploy your image, the administrator profile in your image will be copied to default user.
Please note that the copy happens when you deploy the image, not when sysprep runs (like the WAIK documentation incorrecly states).
If you are using MDT 2010 Step 1 – 3 are done automatically, but I explain them anyway
- Deploy Windows 7 to a virtual machine, make sure you only have one single enabled account, the local administrator account (see Limitations).
- Customize the administrator profile as you want it to be
- Sysprep the machine and capture it
- Deploy the captured image by running setup.exe with an answer file where the CopyProfile is set to True in the Unattend.xml (Specialize Pass).
Note: Make sure not to have copyprofile at all in the Unattend.xml used to create the reference image. Only in the Unattend.xml used to deploy it.
Update 2013-09-20: Check the MTD 2012 / 2013 tips and tricks video on how to enable CopyProfile as part of your MDT 2012 / 2013 deployments.
All Customizations to Default User Profile Lost
Configuring Default User Settings – Full Update for Windows 7 and Windows Server 2008 R2
How to customize the default local user profile when you prepare an image of Windows Vista, Windows Server 2008, Windows 7, and Windows Server 2008 R2
I have seen a few issues with IEAK for IE 11, but not the one you are describing.
We are seeing an issue with Windows 8.1 and Internet Explorer 11 not being able to load some web pages. It appears to be related to using copyprofile. We set copy profile to false and all the issues we are having with IE go away. Have you seen any problems with IE11+Win8.1 related to copyprofile?
Thanks in advance,
You can capture those settings in a script, and restore later using another script
Hi, I stumbled on this blog while looking for some detailled info about CopyProfile. Now you say here : "You cannot configure ………………… keyboard, language and regional settings in the default profile." and that reminded me of another issue that has caused me several migraines. Could you tell us if there is a way to copy these settings? Or can those only be deployed using a reference image?
Nope, you should always capture in image after sysprep, not booting back up… I recommend adding a script to the task sequence that does your config, or use group policy/preferences for the settings.
Johan,Is it possible to do this all in two steps? #1 Do the modifications to admin – sysprep/close image – restart with a copyprofile=true XML. Would you now have a single instance of W7 running with the default profile (as best as W7 is capable) having your customizations? Obviously keeping everything Local/off domain.#2 Next sysprep/close this single instance up as your gold. No longer needing to manage copyprofile settings but the default profile is setup. Also, if there is a W7 limitation to be addressed you're working on a gold that just requires you to figure out what scripts etc.… Read more »
Language settings are unfortuntately, as you discovered, not part of the copyprofile feature. You have to edit the registry during deployment the predefine those. That being said, some language packs (like Swedish) did have issues initially that has been corrected by updates.
Hello Johan, Thank you for the article, I was looking at TechNet White Paper, TechNet Forum though I was looking at incorrect instructions on Microsoft Websites. After researching a couple of days then found your article says "Note: Make sure not to have copyprofile at all in the Unattend.xml used to create the reference image. Only in the Unattend.xml used to deploy it." Now It makes sense why this has to be done when deploying an image NOT sysprepping a template. Just wondered one of the reasons why I need to retain the custom default profile after deploying is to… Read more »
I have seen a few orgs using AutoIT to set this configuration automatically.
Systempropertiesperfomance! I need to turn off all of the settings for better perfomance. copy profile works, but doesn't apply the settings for windows 7.
it copies the registry settings as far as I can tell, but doesn't appear to apply them. there has to be a better way!
Scripting perhaps… but in my scenario, I cannot reboot the computer!
The sysprep and capture only TS is not very reliable so I have stayed away from it… The Suspend action always works
Hey Johan, thanks for the video. Instead of doing the suspend, could you in theory have a VM that you have completed the deploy process on, then afterwards run a sysprep and capture sequence on it?
Yeah I thought that might be the case. The way I've worked around this is to build a machine with CopyProfile set to false. From this 'good' machine I copy the Default User profile to a network share. Any machines that were built with CopyProfile enabled are having to be manually fixed by copying this 'exported' Default User profile over the top of the one on the tainted machine. This has been tested and works fine – any new builds have CopyProfile switched to False now so eventually this issue will go away 🙂
Once the profile is created, it's created, but you can script changes to the registry, even permissions.
Once you've deployed an image with CopyProfile set to true is it possible to revert this setting? The issue I have is that we have deployed a number of machines and we have discovered that a single application uses an old part of the HKCU area of the registry which gets populated with 'Administrator' items which the logged on user does not have access rights to (in this case a legacy entry point to 'Temporary Internet Files') and each new user that logs on gets the same 'tattooed' items in the registry. I have tested setting CopyProfile to False on… Read more »
You can use GPO Packs (create via Security Compliance Manafer) to deploy local policies during a deployment.
As far as listing of what settings that gets captured using copyprofile, I haven't seen any… I did remember seeing a video by Raymond Comvalius covering a few things that was not captured…
Thanks for this post Johan, I've used it and as far as I can tell it's working. For example, the desktop background and screensaver that I set are copied to the new profile. However, some local policy changes that I made on my golden image aren't being copied to each new profile. I'm not sure if that's expected or not – is there any where to read up more about what is included in Copy Profile and what isn't? Perhaps I'm approaching this the wrong way, is there a better way to deploy these local policy changes to the deployed… Read more »
There are a few other option listed in the "Additional Resources" section. I normally use snapshots in my vm's to reduce the time for extra configurations.
Hey… Is it possible to copy the administrator profile into a deployed image? – So we dont have to customize the profile every time we make a new capture?
I haven't tried having the unattend.xml creating a new user account during the deployment in cómbination with CopyProfile. However, logging in a new domain user after deployment works fine.
Not sure if this is still live, but here goes..Using WDS for Win7 deployment. Have sysprep'd/captured Win7 reference PC to WDS, and depoyed that install image to a new machine. In the answer file on WDS I use copyprofile to copy the Administrator account (used to prep the Win 7 box) to the default account. I also include the creation of a new local admin account, sysadmin.When I try to log in as (local) sysadmin on the newly deployed PC, I get "user profile service failed the logon", profile cannot be loaded.To my simplistic way of thinking, surely a new… Read more »
Setting UpdateServerProfileDirectory=1 is all you need to do, but it needs to be in the sysprep.inf file (not sysprep.ini), and the sysprep.inf that is actually used when deploying the image.
Johan, I'm working with windows XP SP3, and I can't seem to get the admin profile to copy to the default user. I've been reading around and I've found information saying to place UpdateServerProfileDirectory=1 into the [unattended] section of the sysprep.ini. I have it placed in the sysprep.ini of my sysprep & capture task sequence, but when I deploy, the admin profile doesn't seem to copy. Is this line supposed to go somewhere else… in my task sequence used in deploying, perhaps? Any help would be great!!
Does anyone know how to implement skype for windows 7 when working on the virtual machine?
The admin profile is copied during deployment of the image (assuming you have set the copyprofile to true in the MDT unattend.xml).
The only thing you need to do on the reference image (before sysprepping and capture) is to customize the administrator profile (no copying at this point).
I really need great help regarding copy profile; I have successfully copied administrator profile to default and captured the image with WDS. I have deployed the Image through wds the profile works perfectly however when I import this customized WIM to MDT 2010 so that I can deploy this Customized Image with task sequence , after I deploy the Image I don't see the default profile customized by me it again changes as per the default windows 7 profile. I lose all my settings on desktop including icons and some other settings.
Please help me:
The question is outside the scope of this post but i will answer anyway… The MDT framework can absolutely do what you are asking for, without using the database, but you need to customize the wizard because the default wizard (xml/hta) does not have those additional panes.
Our setup:MDT 2012; Windows 7 and XP clients————————————————————————————- Hello Johan,Please, I need some help here. Business requirement: 1. set computer name as part of deployment. Namining convension = XXXXLT7LHG5BS ; first four letters are location code, I have created code for remaining part i.e. Is Laptop or Desktop and Serial number2. a sebset of application to be deployed only to few bunisess units3. a sebset of application to be deployed only to few countries4. There should be a option to select language pack and install only if selected. Technical requirement: 1. Menu for end user to enter four letter location… Read more »
Check out this script:
I have used it in"thick" (applications installed in the WIM) images to pin the items onto a taskbar that the client wants once deployed:
Nope, you're are very much correct… You cannot configure pin to task bar, notification area icons, default list of recently used programs in the start menu, keyboard, language and regional settings in the default profile.
Am I wrong if I say you can't keep the taskbar customization with copyprofile? Such a pity …