News, tips, advice, support for Windows, Office, PCs & more. Tech help. No bull. We're community supported by donations from our Plus Members, and proud of it
Home icon Home icon Home icon Email icon RSS icon
  • Customize the initial Windows 10 installation

    Posted on Rick Corbett Comment on the AskWoody Lounge

    Home Forums AskWoody support Windows Windows 10 Customize the initial Windows 10 installation

    This topic contains 7 replies, has 4 voices, and was last updated by

     Rick Corbett 3 weeks, 5 days ago.

    • Author
      Posts
    • #1848606 Reply

      Rick Corbett
      AskWoody_MVP

      Putting to one side whether one *should* interrupt the Windows 10 installation process, this topic is about whether you *can*… and why on earth would you?

      The simple answer is ‘customisability’ and ‘consistency’ for *all* users. Organisations interrupt the initial, default Windows installation process all the time in order to build reference images and to amend the eventual Windows experience/environment (using something called an answerfile)… however you want to describe it.

      The benefits are a standard, consistent experience for *all* users of the Windows device. Even if you are the *only* user of a device, there are some advantages of amending the default account template before the first user account is created, e.g. by amending the Start menu so it’s clear of all pinned apps before the first connection to the Internet. Even outside of a business environment managed by membership of a ‘domain’ (rather than the home environment of a ‘workgroup’), it’s still possible for home users to enjoy some of the benefits of a pre-customised version of Windows.

      Note: This topic applies primarily to *clean* installations, not in-place upgrades. (If you’re carrying out an in-place upgrade then this is less efective.)

      Instead of a discourse on *whether to* (it’s your choice), here’s *how* to, using a clean install to upgrade from Windows 10 Home 1803 to Home 1809 as an example. I’m using a VM (virtual machine) so I can capture decent screenshots of the process but will use the term ‘PC’, just because it’s easier to understand.

      It goes without saying that you should only do this after ensuring you have copies of your data stored safely away from the PC you are going to wipe clean and/or have made a disk image as a complete backup before doing anything else. I do both so if all goes well then I need only restore the data I need.

      1. Before you do anything else, *right*-click on the Start button, select System and make a note of the System type and Edition… you’ll need this info.:

      01-system-about

      2. Turn off Win 10’s hybrid Fast Startup (it interferes with booting into the BIOS/UEFI) then shut down Windows. I use a script to disable Fast Startup but it’s just as easy to do via Power Options. (If you’re using a DVD as the Windows installer source then insert it *before* shutting the PC down and if you’re using a USB stick, insert it *before* powering on the PC again.)

      3. Power on your PC, press the key for the Boot Device menu and select your Windows installer  source to boot from – DVD or USB stick. The Boot Device menu key varies from manufacturer to manufacturer but is usually shown on the initial power-on screen. For example, Dell’s use F12 to get to the Boot Device menu.

      4. I’m using the equivalent of a dual-layer DVD with both 64-bit and 32-bit installer versions as the Windows installer source so I first need to select the architecture (bitness):

      02-boot-manager

      Choose the same architecture as the OS edition you are upgrading from (unless you’ve added RAM and the processor is 64-bit capable, in which case you can upgrade from a 32-bit version of Windows to 64-bit using the same digital license as the previous Windows installation).

      5. Windows Setup will begin so, after choosing your preferred language, time and currency format plus keyboard, you can begin the installation of Windows. After clicking on an Install now button the first thing you will be asked to do is enter information on an Activate Windows screen. You’re going to be reusing the PC’s previously-stored digital license so click on the I don’t have a product key link:

      03-activate-windows

      6. Next, choose the edition you want to install:

      04-choose-edition

      It’s tempting to think you can install a Pro edition instead of your PC’s previous Home edition… but it won’t activate automatically – so make sure you choose the same edition as the previous installation.

      <continued in another post due to file size restriction>

      Attachments:
      3 users thanked author for this post.
    • #1848622 Reply

      Rick Corbett
      AskWoody_MVP

      7. On the next screen, accept the license terms, click Next then choose Custom: Install Windows only (advanced):

      05-custom-install

      8. On the next screen, select each partition in turn and click on Delete until you are left with just Drive 0 Unallocated Space. Click Next.

      07-unallocated-drive

      9. Windows will begin its installation and will eventually get to a Choose region screen:

      08-choose-region

      When you get to this screen, interupt the OOBE (Out Of the Box Experience) process by pressing the CTRL+SHIFT+F3 keys at the same time.

      10. You will end up logged on as Administrator (not just a member of the Administrators group) in Audit Mode at a Sysprep (System Preparation Tool) dialog on a default Windows desktop screen:

      09-sysprep

      This is where you can carry out customisations and have them all applied to Windows’ default acccount template. This means that every account created – the initial user account which, by default, is a member of the Administrators group – and all subsequent accounts will be based on the amended default account template.

      <continued in another post due to file size restriction>

      Attachments:
      2 users thanked author for this post.
    • #1848629 Reply

      Rick Corbett
      AskWoody_MVP

      I carry out clean installs without being connected to the internet. The moment you connect to the internet the very chatty Windows 10 starts multiple 2-way conversations – activating itself, downloading Windows updates, AV definitions, Start menu tile updates and uploading telemetry data.

      For example, here’s the default Win 10 1809 Start menu:

      10-default-1809-start-menu

      I use a USB stick to copy over PowerShell scripts, AutoHotkey scripts (and the AutoHotkey executable) and REG files to configure aspects of Windows automatically – like turning off telemetry, creating 2 folders (Temp and Support) that I always use, configuring TEMP/TMP environment variables and PowerShell execution policy, removing built-in crapware, installing my preferred browser and amending default app settings, changing Windows’ ‘look and feel’ like changing File Explorer‘s default view to ‘Details’, amending privacy settings and cleaning up the Start menu, etc. All of these become the defaults for all accounts so you don’t need to carry out further amendments on individual accounts.

      11. The main PowerShell script is run by *right*-clicking on Start and opening a Windows PowerShell (Admin) elevated console, temporarily setting execution policy to ‘unrestricted’ (Set-ExecutionPolicy unrestricted) then running the PowerShell script.

      This uninstalls *all* the built-in crapware except for the Store and calculator (you choose the ‘GoodApps’ to retain). It also removes the Start menu layout and replaces it with a custom one with just the 3 shortcuts I want for Notepad, Paint and File Explorer. (I later add another for my preferred browser.)

      12. When I’ve finished customising I click on the OK button in the Sysprep dialog. (Do *not* tick the Generalize checkbox. This removes drivers and is only used to create a reference image for multiple different hardware platforms.) This reboots the PC back into the OOBE process where I continue installation of the first account as normal.

      This might seem like a lot of work but it doesn’t actually add much time once you get the hang of it. In addition to the initial account, if I create further user accounts – like a standard account for my own use – I don’t have to make the same changes I made to the initial account nor do I have to remove new copies of the same crapware I removed from the initial account.

      The new default Start menu for all users looks like this:

      11new-1809-start-menu

      That, basically, is it. I currently use a PowerShell script called Windows 10 Decrapifier (available from Spiceworks… but you have to subscribe to the group to gain access) to clean the PC of built-in apps and clean the Start menu of entries by creating a new XML layout template. Let me know if you want more info. I’m hoping to test a similar PowerShell collection called Windows10Debloater in the next week or so.

      I have REG files and scripts that I use, depending on who/what the device is for.

      REG:

      • Change privacy settings
      • Make changes to context menus. For example, remove context menu entries after  the associated app is uninstalled, e.g. ‘Edit with Paint 3D’ and ‘Edit with Photos’
      • Remove file associations to do with 3D (Paint/Print/Builder).
      • Amend Start menu and taskbar icons.
      • Remove the 3D Objects namespace from File Explorer.
      • Add preview handlers for script files to File Explorer.
      • Set default File Explorer view to ‘Details’ (after deleting views that have already been stored in Bags and BagMRU entries)
      • Show drive letters before volume name.
      • Turn off everything to do with gaming, including the entries in Settings.
      • Disable services like telemetry, Hyper-V and RetailDemo.
      • Manage Edge‘s default behaviour.
      • Turn off various notifications (e.g. Tips and Windows Welcome Experience).

      AutoHotkey:

      • Actions that need if/then logic. For example, if 64-bit do this, otherwise do that.
      • Actions that involve file/folder operations, e.g. creating folders.
      • Actions that have multiple choices (i.e. best invoked via a GUI)
      • Actions that require simplified and elevated access to PowerShell cmdlets (e.g. re-enabling SMBv1).
      • Actions that require elevated privileges, e.g. the functionality of ‘Run as administrator’.

      Note: AutoHotkey is not installed at this point so I run the scripts by dropping them on a copy of the AutoHotkey executable on the USB stick.

      PowerShell:

      Apart from uninstalling built-in crapware I don’t often use PowerShell as I’m not very familiar with it and find that it’s more complex than I need for most tasks which can be automated quicker using a REG file and/or AutoHotkey. When I do have to use it then I try to wrap the PowerShell cmdlet in AutoHotkey to make it easier for me than messing around with a console.

      Basically, if I have to do something more than once or twice then I try to script it. 🙂

      Hope this helps…

      Attachments:
      5 users thanked author for this post.
    • #1848658 Reply

      doriel
      AskWoody Lounger

      This is great article. Thank you very much for that. I did this in the past, because I wanted to deploy Windows including apllications like Office, SAP, Adobe Reader, … They can be included in these images.

      I did this with computer completely offline too – so the activation didnt happen. I installed applications. Then I ran sysprep with parameters OOBE and Generalize. Sometimes, I had problems with pre-build apps (cortana, bubble-witch saga, miracle app, ..), that didnt let me start sysprep. Simply because Windows fetched different apps for different users – thats why I did it offline – no backgroung sniffing.

      But now I should be doing this every half year again, because of updating havoc by Micro$oft. Shame on you Microsoft, shame on you..

      I have not failed. I've just found 10,000 ways that won't work.
      --- Thomas A. Edison

    • #1848737 Reply

      cyberSAR
      AskWoody Plus

      I’ve deployed quite a few machines with Windows 10 Decrapifier and it works great. On a couple it hung and the fix is to open a second instance and let it run. Have had no issues with any of the machines (1809 and 1903).

      I’ve also tested running it on a couple existing installs for a single user and it seems to work fine.

    • #1848749 Reply

      BATcher
      AskWoody_MVP

      Rick: that’s a superb article!  I use Windows10DebloaterGUI.ps1 to get rid of most of the assorted rubbish.

      However, the main snag with this approach (IMHO) is that you have to know up front all the modifications you wish to apply!  I find that my modifications for a new operating system (account settings, HKLM and HKCU registry entries, network printer connections, and so on) are an incremental process over several weeks, if not months.  This is why I write a bunch of BATch files to apply the changes to each user account on each PC, or to each PC, at each location.  This doesn’t entirely solve the problem, but fortunately I can use RDP and log on to each PC and do the remaining work.

      The whole thing is tedious beyond measure…

      BATcher
      • #1848764 Reply

        Rick Corbett
        AskWoody_MVP

        @batcher – Many thanks for the kind words. The thing is, IMO the method is generally regarded as solely for use within a business environment. I became interested in whether it also had its use in a home environment… and especially with devices running Home editions of Win 10.

        As such, I tried to pitch the topic in a way that a) Windows 10 users would find it easily (by posting in the ‘Win 10’ forum instead of elsewhere); and b) Home users might persevere with reading through the steps and perhaps post back with ‘can it do this’, ‘can it do that’ questions.

        If so then I’ll know whether to expand outside of this Audit Mode method into gently suggesting people look into (or just ask) whether very simple scripting –  REG files or AutoHotkey (or both) – could make their lives simpler… hence my  Free AutoHotkey ebook topic.

        IMO it’s a shame that ‘scripting’ is currently buried deep within the ‘DevOps’ forum so it’s unlikely most folks will ever realise scripting is just a tool and can often be very simple. Even ‘Learn to Code’ is buried within ‘Outside the box’. I think it just inadvertently gives the impression that ‘scripting’ is inherently ‘uber-geeky’ (which it very often isn’t, IMO) and puts people off for no good reason. 🙁

        This *isn’t* a criticism of AskWoody… just a reflection of the slightly different programming focus (VBA, etc.) that Windows Secrets Lounge had compared to the more patch-and-exploit focus here at AskWoody. (On WSL people were used to me boring the pants off them with my AutoHotkey posts. 🙂 )

        3 users thanked author for this post.
    • #1861102 Reply

      Rick Corbett
      AskWoody_MVP

      I’ve just carried out the above process on a Dell Latitude E7450 laptop and – initially – couldn’t halt the OOBE as described above. The volume was adjusted instead. Hmmm…

      It turned out that the Function keys at the top of the keyboard were active as Media control keys, not as F1-F12 Function keys.

      As a result I had to add the Fn key as well in order to interrupt the OOBE, i.e. use CTRL+SHIFT+Fn+F3 keys all together. Something for me to remember in future. 🙂

      Hope this helps…

      1 user thanked author for this post.

    Please follow the -Lounge Rules- no personal attacks, no swearing, and politics/religion are relegated to the Rants forum.

    Reply To: Customize the initial Windows 10 installation

    You can use BBCodes to format your content.
    Your account can't use Advanced BBCodes, they will be stripped before saving.