Sunday, September 30, 2012

PowerShell v3 for Down-level OSs

As most of you probably know, the latest version of PowerShell, PowerShell v3, shipped inside Windows 8 and Server 2012 (including Server Core!). Microsoft has also released versions of PowerShell v3 for older versions of windows. Specifically, you can now download PowerShell v3 for:

  • Windows 7 – both 32-bit and 64-bit. You must have at Win7 SP1 loaded. (64-bit – 15.8MB, 32-bit 11.7MB))
  • Windows Server 2008 - both 32-bit and 64-bit. You must have at Server 2008 SP2 loaded . (64-bit - 14.4MB, 32-bit 10.5MB))
  • Windows Server 2008 R2 - 64-bit only and includes Server Core. You must have at Server 2008 R2 SP1 loaded 15.8MB)

If you’ve been running a beta version of PowerShell v3, then you have to remove it first before installing v3.

To get the various installation packages for your system, go to (the Microsoft Download Centre) and look for Windows Management Framework 3.0. This package has PowerShell V3, and all the necessary plumbing (latest version of WSMan, some new cmdlets, etc, etc, etc.).

If you need to remove the WMF 3.0 package, you need to look for the KB article (KB2506143 for Windows 7 SP1 and Windows Server 2008 R2 SP1; KB2506146 - for Windows Server 2008 SP2)

There’s no excuse – get the latest version today!

Technorati Tags:

Thursday, September 27, 2012

Updated Start8 From StarDock

I see from email that StarDock has released an updated (beta) version of their Start8 utility that I wrote about recently. This neat little app puts the Start button back into Windows, meaning it’s easier to use (at least for some!).

When I last wrote about it, I got a lot of comments – as expected. Some of the comments, received in mail, on the blog and via twitter, were along the lines of ‘Windows 8 is different, get over it and learn it’  - something I can’t really rebut!  But I also got quite a lot of agreement as well as lots of cool tips on how to improve one’s experience with the Windows 8 UI. For all those comments, thanks.

It’s true that I can live without the start button and by using a combination of new keyboard sequences and pinning what I need to the desktop’s task bar (and ignoring the Start Screen) I can get by. BUT: why should I have to go to all that effort? If Microsoft had listened to folks like me, they would have given me the freedom and the opportunity to choose. It would have cost them nothing to have left the start button in the UI (if anything, ripping it out probably cost Msft more in engineering and testing than leaving it in would have cost). And it would have made the Windows team seem a bit less arrogant. But they didn’t and so I’m left with dealing with that. But anyway – if you are missing your start button – Start8 is a way to reclaim it. I like it and it, for me, makes Windows 8 a whole lot more attractive AND it makes me more productive.

One small thing – although in beta, Stardock have started charging for it. From their web site, the cost is US$4.99 or around £3.33. This is a sufficiently cheap price that I said yes in a flash.

And two final things: If you DO buy Start8, and want to save 10%, cite this discount code: RC-00017391. Second, thanks to John J Kavanagh, there’s an open source project that does much of what Start8 does – see http://

Friday, September 21, 2012

Even More about Windows Server Core 2012 and GUIs

I’ve written a bit recently about Server Core in Server 2012. But here’s yet more details. In Server 2012, the GUI is an installable feature – one you can add or remove. There are actually three levels of GUI within Server 2012:
  • Full GUI – the full blown Windows Server GUI as we’ve always known it plus the Metro start panel, etc.
  • MinShell – a partial GUI but one that enables you to run things like Server Manager, some control panel applets,MMC consoles and PowerShell ISE.  But no desktop/Metro Shell and no IE.
  • None – The server core GUI as we love it – but with the opportunity to specify PowerShell as the window to open at boot (or when you RDP into it).
This provides a great compromise – you can have the GUI where you need it and remove it when you don’t. I love that – although not all applications will run on MinShell or Server Core itself. You need to check – but increasingly applications are server core friendly! For both MinShell and Server Core, the default is to run CMD.EXE as the default shell – when you logon to a server core box you see CMD.Exe. You can fix that easily enough so that at boot time you get PowerShell instead – a simple registry fix.
As part of the Launch of Server 2012 here in the UK next week, I’ll be presenting a bit on PowerShell and showing some of what it can do. One aspect of the server we are showing is Server Core and I’ll be demoing how easy it is – I wrote a script for that:
Function Set-GUI {  
[ValidateSet("Full", "MinShell", "None")]
[String] $GuiType = "Full"
# Here check what to do and do it Switch ($GuiType) { "Full"     { Add-WindowsFeature Server-Gui-Shell, Server-Gui-Mgmt-Infra
             $RegPath = "Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\winlogon"
             Remove-ItemProperty -Path $RegPath -Name Shell -ErrorAction SilentlyContinue –Force
"MinShell" { Uninstall-WindowsFeature Server-Gui-Shell, Server-Gui-Mgmt-Infra  # Just in case
             Add-WindowsFeature Server-Gui-Shell
             $RegPath = "Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\winlogon"
             Set-ItemProperty -Path $RegPath -Name Shell -Value 'PowerShell.exe -noExit -Command "$psversiontable"'  -Force 
"None"     { Uninstall-WindowsFeature Server-Gui-Shell, Server-Gui-Mgmt-Infra
             $RegPath = "Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\winlogon" 
             Set-ItemProperty -Path $RegPath -Name Shell -Value 'PowerShell.exe -noExit -Command "$psversiontable"'  -Force  }
Default    {"$GuiType unknown - enter Full, MinShell or None"; return
# Finally Reboot into new gui mode!
} # end of Set-GUI function
This could usefully have been added into the ServerCore Module!

Tuesday, September 18, 2012

Adding Keyboards in Server 2012 (and Windows 8)

In Server 2008 R2, you could use a control panel applet to add a new keyboard layout to your system – and for those of you whose normal UI-culture is other then EN-US, this is very useful. I have a very nice Microsoft Natural keyboard with a US layout. If I install an OS with En-Us, then I get the American keyboard just fine. Sadly, this means I can’t easily get to the £ and € characters. So I install a US-EN operating system, then use control panel to add a language (EN-GB) and then I have a nice task bar menu to enable me to select the one I want. As I touch type, moving between one keyboard layout and the other is pretty easy once I have both layouts loaded.

The only thing – Microsoft moved the place to configure my extra keyboard between Server 2008 R2 and Server 2012. In Server 2008 R2 (and Win 7), you use Control Panel and selecting Change keyboards or other input methods.




This bring up the Region and Language dialog box, from which you click on Change Keyboards



This in turn brings up the Text Services and Input Languages dialog box. From here you click add to add a keyboard. The screen shot here is from a Server 2008 R2 computer with both US and UK keyboards loaded.



However, in Server 2012, Microsoft’s changed control panel and place where you add new keyboards. From Control Panel, you now select Add a language:



This brings up the Language Dialog box from which you can Add a language. The below screen shot is from a Windows 8 box with both keyboards loaded.  



So why did they change it? No idea – I suppose mainly because they could. But now you know where they hid that!

More on PowerShell on Server Core

PowerShell and Server Core – Server 2008 R2 and 2012

in July, I wrote a few articles on PowerShell in Server core (here, here, and here). There were two key points noted in those articles. First, Server Core in Server 2012 has a removable GUI – you can add it or remove it! Secondly, in Server Core in Server 2012, by default, the system starts up running CMD.EXE, not PowerShell, although there’s a simple registry hack that enables you to run PowerShell instead.I’ve been playing with this a bit and have discovered a few additional things about Server Core and PowerShell.

Adding PowerShell v3 to Server 2008 R2 Server Core

The first interesting thing I’ve found is that you can add PowerShell V3 to Server 2008 R2 Server Core. However, to do that, you need to add the .NET Framework 4.0 to your server core system. Go to the Microsoft Download centre and download the Microsoft .NET Framework 4 (Standalone Installer for Server Core. Your Server Core installation needs to be running SP1 or higher. Read the instructions carefully!

Adding GUI to Server Core – Which Shell to Run

In one recent article, I noted how you could add and remove the GUI from Server Core. I’ve written two functions (Enable-GUI and Disable-GUI) that convert between the two GUI modes. I’ve tested these functions pretty thoroughly and the adding and removing of the GUI is straightforward, albeit on the slow side.

One thing I found is that if I first set PowerShell as the default shell (see here), then add the GUI, when Windows Server 2012 restarts, you have the GUI, but the shell itself doesn’t start – PowerShell runs as the default shell!  It took me a few minutes to work out what was going on. A very simple workaround is to remove the Shell default value from the Registry before rebooting. The code to add the full GUI back to Server core now looks like this:

Install-WindowsFeature Server-Gui-Shell, Server-Gui-Mgmt-Infra -Source d:\sources\sxs
$RegPath = "Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\winlogon"
Remove-ItemProperty -Confirm -Path $RegPath -Name Shell -ErrorAction SilentlyContinue

To get the full scripts see here (for Enable-GUI) and here (Disable-GUI).

Sunday, September 09, 2012

PowerShell PowerCamp October 27-28th–Filling up and a Special Guest!

Now that folks are back to work and catching up on their reading, I’m starting to get bookings for the October PowerShell PowerCamp event ( for the details). It’s great to get mail from folks asking for a place – so far the farthest away is from New York City. Very Cool!

As those who have come on earlier events know, I try to have an extra guest to come along and offer some additional thoughts on how to best use PowerShell. I give them leeway to talk about whatever they want – past events have seen James O’Neil and Tom Arbuthnot provide some thought provoking insights. In October, I’m very pleased to announce that we’ll have Richard Siddaway. Richard is a well published PowerShell author and an MVP.

So if you are looking for a fast paced, fun filled introduction to PowerShell, this is an event for you. I hope to see you there to continue your journey into the joys and delights of Windows PowerShell v3.

Saturday, September 01, 2012

Start8 – Get the Start Button On Windows 8

Like many users of Windows 8, I really dislike what some call its bi-polar User Interface – the appalling (IMHO) start screen combined with the partially neutered desktop. And don’t get me started on how lame I think most of the Metro (SIC) applications are? We had a better UI than this in Windows 2! Why can’t I just overlap Metro (SIC) apps? Why can’t I have 3, 4 or more all up on the screen at once?  The same sentiment occurs on Server 2012, although on Server 2012, I’m well served with PowerShell!

Despite all the other goodness that is inside Windows 8, I find this UI poor. It really makes me dislike Windows 8, and (to use the language of all the Msft surveys I seem to get!), it does not make me feel better about Microsoft. Now, I am sure that a) many people love this new UI and b) it will be great on a tablet or phone. But for me, this dual-purpose UI is just plain a waste of space on corporate desktop PCs that, by and large,  continue to be used by knowledge workers using desktop applications – even Office vNext is not a Metro app (well not yet anyway). 

I have two great big 24-inch TFT panels that are not touch sensitive. Initially, using both Windows 8 betas and Server 2012 betas, I found myself constantly flipping back and forth between the desktop and the start screen. This was slow and very painful – and made me put Windows 7 back onto one of my desktop machines.  From the press coverage of Windows 8, I know I’m not alone! Although public opinion is not totally on my side, it’s pretty heavily weighed that way! All in all, Microsoft could have, and should have, done better.

Imagine my delight and excitement when I came across Start8, a new application from StarDock. Simply put: this application puts the start button back into Windows 8. It also changes the startup process so that instead of dropping you onto the Metro (SIC) Start screen at boot time, you are put straight into the Desktop. And there’s even a ‘start/run’ box on the Start menu! This is what, IMHO, Windows 8 really should have looked like: It lets me use Metro and Metro apps when that is appropriate (maybe if I get a Surface), but not have the start screen in my face quite so much. And on desktops and laptops, I get the best out of Windows 8 using a familiar and easier to use UI! I have converted my laptop to Windows 8 and with Stat8, I am enjoying the new OS.

Here’s what it looks like in one of my Windows 8 VMs.



Notice the nice shiny start button just where it used to be?  Well – when you click it, you see:




And as a really cool added feature, if you right click that button, you get to shut down the system – which looks like this:


Now, with the start screen (and the metro apps that come with it) are not so in my face, all that awful stuff I hated about Win8 is now largely a memory. On my main Win8 box (my laptop!), I’ve installed my favorite browser and music player, and now spend almost all my time on the desktop using desktop applications. And being productive!

For me, this has transformed my view of Windows 8. Instead of fighting the UI every time I try to use it, I now can be productive, and enjoy all the truly great features of Windows 8. With Start8. I now really enjoy using Windows 8. I have even recommended it to some of my friends working at a large software giant who agree with my views on the UI (even if they probably can’t be seen being productive and using it).

Right now, whilst it’s in beta, Start8 is free. But I like it sufficiently, I’m happy to buy it when it is finally released. This product makes Win8 usable for me and as long as Microsoft feel they know better about what my PC should look like, it’s going to stay on my Windows 8 and Server 2012 desktops.

My overriding question is: if an ISV like Stardock could do this and make it look so good, why couldn’t Microsoft?