Microsoft Windows

As well as information here it is worth looking at the Useful Commands page.

Windows 7

Hibernating

So, one question I had, can you move the Hibernation File (C:\hiberfil.sys) to another drive? No, is the short answer, however http://technet.microsoft.com/en-us/library/2007.11.windowsconfidential.aspx explains why.

Hiding a User

Sometimes you need a user on a Windows machine but you don't want it shown on the login screen, of course this really only applies when you are not using a domain. The steps are as follows:

  • Create the user account if it does not already exist
  • Load the Registry Editor (Regedit) with admin rights
  • Navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon
  • Create a new Key called "SpecialAccounts"
  • Inside "SpecialAccounts" create a new Key called "UserList"
  • In "UserList" create a new DWORD of the account name to be hidden
  • Note: 0 means hide and 1 means show
I have tested this on Windows 7, I do not know if it works on Vista or Windows 8 etc.

64-Bit Editions

The first area worth highlighting is WoW64, which is "Windows 32-bit on Windows 64-bit), it is the 32-bit sub-system on 64-bit Windows that is designed to take care of 32-bit applications and provide compatibility. There is a good article on this at WoW64 - Wikipedia, the free encyclopedia, as well as The 'Program Files (x86)' and 'SysWOW64' folders explained / Windows 64-bit (Technical Article), in addition As promised, what is the WOW64 and what does it mean to managed apps that you run on 64bit machines? - SpankyJ - Site Home - MSDN Blogs provides some useful information, especially around the .NET platform and finally File System Redirector (Windows) is of benefit on this subject.

Indexing Service

I have found that the Indexing Service makes a rather large file called C:\ProgramData\Microsoft\Search\Data\Applications\Windows\Windows.edb, which on a small C: drive can causes issues. To move it to the D: drive or another location just go into "Indexing Options" in the Control Panel, click "Advanced" and then set a new location. After a couple of minutes it will be moved. Nice and simple!

Windows 8.1

Installation Media

If you need to install or reinstall Windows 8.1 (sorry, this does not work in Windows 8) then you can create your own media from the installed copy, see Create installation media for Windows 8.1 - Windows Help for more details.

Windows 10

For update details then Windows 10 update history - Windows Help is well worth a quick read.

If you are having issues with Windows 10 and getting the Blue Screen of Death then check out Troubleshoot blue screen errors - Windows Help for some help and advice.

System Information

There are a number of ways to get technical information about your system, first there is the user friendly way:

  • Click the Windows menu
  • Click the Settings cog
  • Then select System and finally About
Here you will see the exact version and build of Windows 10 that you have as well as processor and memory information and a bit more besides.

The next option is to use System Information, there are a couple of ways to launch this.

  • Click the Windows menu
  • Start typing "System Information" and as soon as you see "System Information (Desktop App)" click it
Alternatively launch PowerShell or a Command Prompt and exectue msinfo32 and it will pop up.

The last option is a simple command that can be run from PowerShell or a Command Prompt, which is systeminfo it takes a bit of time to run but it works very well and has various output formatting options and can run against remote machines.

Removing Some Apps

Let me start with the "normal" ways to remove application, apps or programs, after that we'll move on to some advanced techniques. Firstly try this:

  • Click the Start button
  • Click the Settings cog icon
  • Click "Apps", which takes you to "Apps and Features
  • Older Windows 10: select System and then "Apps and Features"
  • Find what you want to remove, click it and then click "Uninstall"
Now this should work for everything and it should give you what is in the Windows Control Panel "Uninstall a program" and the Windows Store, so it is the best place to start but the other two places may help.

Some "apps" on Windows 10 appear impossible to remove, they are not in the Control Panel "Uninstall a program" and you cannot remove them via Windows Store and yet they update via Windows Store. I have noticed, for example that Windows 10 comes with OneNote, which is nice and very handy but confusing if you install Microsoft Office 2016 and then also get "OneNote 2016" as well! You can remove these "Default Apps" that come with Windows 10 and of course it is PowerShell to the rescue! So let's remove this confusing and hard to remove OneNote...:

  • Start PowerShell, early versions on Windows 10 required "Run as Administrator" but it seems not to be the case now
  • Execute this: Get-AppxPackage *OneNote* (The *OneNote* part is not case sensitive
  • If it finds an entry then do Get-AppxPackage *OneNote* | Remove-AppxPackage to remove it
Clearly you can repeat this for other apps you don't want, oh and do note that removing this "OneNote" will leave the OneNote from Office intact. To get a full list of apps try the following:
Get-AppxPackage | Select-Object -Property Name
It is worth noting that what appears as "Groove Music" is actually Zune underneath.

I have also found that some items in the "Play and explore" section of the start menu are not actually installed apps but rather links to the Windows Store so you can install them if you wish. To remove items like this, which include "PictApp", "The Mirror", "DuoLingo" and "Flipboard", then simple right clik them and "Unpin from Start".

Windows 10 Versions

Microsoft's plan with Windows 10 is to keep updating it, in effect "operating system as a service". So this makes tracking versions and builds more complex. Microsoft launch Windows 10 at Version 1507, followed by 1511, 1607 (the big "Anniversary Update" and next up is 1703 "Creators Update", however there are minor build numbers. You can read a lot of detail at Windows 10 version history - Wikipedia but Windows 10 and Windows Server 2016 update history - Windows Help gives the details of releases within version 1607, for example. This last page is useful for checking you have the latest release.

It should also be noted that Microsoft have a Long Term Servicing Branch (LTSB) which is designed for large businesses who want more stability. It is only the Enterprise Edition that comes on LTSB.

Full release information is available from Windows 10 release information - current branch, build history which shows which are the current version and whether you are up to date.

Bash on Ubuntu on Windows

If you have the Windows 10 Anniversary Edition (Version 1607) or later and the 64-bit version then you can enable Bash on Windows 10, see Bash on Ubuntu on Windows - About for details, alternatively Discover the power of Bash on Windows | InfoWorld is a good article.

If you execute the command lsb_release -a in a Windows Bash window then you will see which version of Ubuntu you have. With Windows 10 Anniversary this is Ubuntu 14.04.5 LTS, however with Creators Edition this is updated to Ubuntu 16.04. However you need to do some manual steps to get Ubuntu to update. I believe you need to do the following:

  • Run PowerShell as Administrator
  • lxrun /uninstall /full
  • lxrun /install /y
However I have not tested this myself.

Windows Subsystem for Linux

The default and original implementation is to use Ubuntu, as mentioned elsewhere. However you can change this to openSUSE, as mad as that sounds, it is possible, see You can now install SUSE Linux distribution inside WSL on Windows 10 - MSPoweruser or Make Windows green again – Part 1 - SUSE Blog | SUSE Communities for details.

Enterprise Edition

It is worth noting that you can only login via Azure AD or a local domain, the install setup does not allow anything else like a local account or standard Microsoft Account.

Keyboard Shortcuts

Some of these will work on earlier versions of Windows, you'll just need to try and see.

  • Win+L - lock the computer
  • Win+E - launch Windows Explorer
  • Win+P - change how multiple screens are used
  • Win+Pg Up - move Windows apps to another monitor
  • Win+Pg Down - move Windows apps to another monitor

Troubleshooting

If Wake-On-LAN or WOL does not work there are several things you need to check and you need to get all of these right to make it work, you don't get any induction of why it is not working! So fundamentally you need to check the following:

  • BIOS
  • Network Card
  • Operating System
BIOS

My experience on this is with Dell Precision Workstations but the principles should hold true elsewhere, so in the BIOS check the following:

  • Wake on LAN/WLAN - okay so an obvious setting but you need this set to something other than disabled, I use cables so "LAN Only" works for me
  • Deep Sleep Control - this needs to be disabled as you do not want the machine going into such a deep sleep that you cannot wake it up!
Network Card

Firsty you will need a cards that supports Wake-On-Lan and it will need to be installed correctly. This does of course work quite well with motherboard integrated cards that support the functionality. The second thing you need is the right drivers, in the driver's power management settings make sure it is configured to respond to WOL packets. It is also worth checking any energy or power settings to make sure energy saving is turned off

Operating System

With Window 10 I had a lot of trouble getting this working, eventually Intel Technical Support found that Microsoft's "Fast Startup" technology was the issue, it was putting the machine into a sleep state that WOL could not get it to wake up from. A good test is to "sleep" the computer and then send a WOL packet, if it wakes up then you have got most things right and you need to check to see if "Turn on fast startup" is on. Microsoft do recommend this but if you want Wake-On-Lan to work then you need to turn it off. It is not the easiest setting to find, so try this:
Start Button -> Settings -> System -> Power & sleep -> Additional Power Settings
This takes you to "Control Panel -> Hardware and Sound -> Power Options"
Select "Choose what the power buttons do", click "Change settings that are currently unavailable", which is UAC protected, uncheck "Turn on fast startup", click "Save changes" and you are good to go.