Installing PowerShell on Vista/"Longhorn" Server

1.       I am new to PowerShell and would like to install it on my Vista machine.


The following page  http://www.microsoft.com/windowsserver2003/technologies/management/powershell/download.mspx gives you links to various PowerShell downloads. Choose the one that best matches your operating system, platform and language requirements.


2.       I am using a “Longhorn” build greater than 5600 and I do not find an installable for my version of “Longhorn” server


We currently support Windows PowerShell RC2 for “Longhorn” IDS (5600). This means that you will not be able to install Windows PowerShell on subsequent builds of “Longhorn” server as of now. We will soon provide you with installation options.


3.      When I try to install Windows PowerShell I get the following error “Installer encountered an error: 0x8007177f .  This machine is disabled for file encryption”


Windows PowerShell is being delivered as an update for Windows Vista. Currently this requires that “EFS” be enabled on the system.


To enable EFS, press Windows-R and start gpedit.msc. Browse to Computer Configuration -> Windows Settings -> Security Settings -> Public Key Policies -> Encrypting File System -> (right-click) Properties, and set the EFS state to “Allow”.


To verify that the above worked, press Windows-R and start rsop.msc. Browse to the same path as above, and verify the setting.


If your domain administrator has disabled EFS, then you will not be able to enable it locally. In that case, you will have to depart the domain, complete the install, then rejoin the domain


Also, once the installation of PowerShell is complete, you can disable EFS. EFS is not required for the functioning of PowerShell, but only for its installation.


4.       When I install Windows PowerShell I get an error “The update does not apply to your system”


The new installer technology in Windows Vista allows an update package to be installed only on a version of the OS for which it is targeted. Essentially, this means that if you have an update package targeted for version 6.0.5600.16386 (Vista RC2), it cannot be installed on a system which has a different version (say 6.0.6000.16386 – Vista RTM). So if you get this error it means that you are using an installer which is not targeted to your version of the OS. The following are some of the scenarios when this is most commonly encountered


a.       Installing “Windows PowerShell RC2 for Vista RC2” on Vista RTM


b.      Installing “Windows PowerShell RTM for Vista RTM” on Vista RC2


c.       Installing “Windows PowerShell RTM for Vista RTM” on “Longhorn” server


d.      Installing “Windows PowerShell RC2 for Longhorn IDS (5600)” on other “Longhorn” server builds


 


There were some promotional copies of Vista RTM issued which have different build numbers on which the PowerShell installation will not work. To find the build number of a Vista/”Longhorn” server installation do the following:


a.       Open Regedt32 from “start search”


b.      Go to HKLM\Software\Microsoft\Windows NT\CurrentVersion


c.       Obtain the value of “BuildLabEx”


d.      The first portion of it will give you the build + revision number (for example if the value contained is 6000.16386.x86fre.vista_rtm.061101-2205, then build number is 6000 and revision number is 16386)


 


From the download page mentioned in 1, try to locate an installer for your version of the OS. If it’s not available, please be patient. We will be providing you with an installation option very soon.


 


5.      I installed Vista RC2 and installed Windows PowerShell on it. I then upgraded my system to Vista RTM. I find that Windows PowerShell is lost on upgrade.


The new installer technology in Windows Vista allows an update package to be installed only on a version of the OS for which it is targeted.  Therefore, it is the expected behavior in Vista that when you upgrade from RC2 to RTM, optional components like Windows PowerShell are lost. In this case you will have to reinstall PowerShell.


 


6.      I installed Windows PowerShell on my Windows XP/Windows 2003 system. Now when I try to upgrade to Vista, I get a notification that PowerShell needs to be uninstalled before upgrade.


Since the installer technologies in XP and Vista are different, it necessitates that PowerShell be uninstalled before you can upgrade to Vista. Once upgraded you can reinstall PowerShell on Vista. Please note that there is no guarantee that your custom snap ins will be retained on upgrade. You may be required to register them again. Also the event log location and format are different on Vista. Hence the event log entries will start afresh and will not be a continuation of the entries in XP/2003


 


7.      When I try to install Windows PowerShell I get an error “The resource loader failed to find MUI file


Windows PowerShell is installed using Windows Update Standalone Installer. A change in Windows Update settings will cause this failure. The solution to this problem is to reboot the system twice (yes you read it right) and then reinstall PowerShell again.


8.       I want to install/uninstall Windows PowerShell on Vista from the command line


Do the following for installation. Note that some of the operations require elevated privileges.


a.       Copy the .MSU file to a temp location (copy c:\installs\Windows-6.0-KB928439.msu c:\temp)


b.      Extract contents using expand (expand –f:* c:\temp\Windows-6.0-KB928439.msu c:\temp\)


c.       Install using pkgmgr (start /w pkgmgr /ip /m: c:\temp\Windows-6.0-KB928439.CAB)


d.      Verify installation is successful by checking the errorlevel (echo %errorlevel%). It must be 0


 


For uninstallation, do the following:


a.       Copy the .MSU file to a temp location (copy c:\installs\Windows-6.0-KB928439.msu c:\temp)


b.      Extract contents using expand (expand –f:* c:\temp\Windows-6.0-KB928439.msu c:\temp\)


c.       Uninstall using pkgmgr (start /w pkgmgr /up /m: c:\temp\Windows-6.0-KB928439.CAB)


d.      Verify uninstallation is successful by checking the errorlevel (echo %errorlevel%). It must be 0


 


9.       I uninstalled Windows PowerShell using OCSetup, but I still find PowerShell in “Turn Windows Features On/Off” and “View Installed Updates”


 


OCSetup uninstall only disables PowerShell but does not completely remove it from the system. What this means is that, It will appear as though PowerShell is not available but, the package is retained internally so that you can turn it back on later.


 


To find more information on what the setup actually does refer to our earlier posting “Behind PowerShell Installer


 


Narayanan Lakshmanan [MSFT]


Windows PowerShell Development


 


This posting is provided “AS IS” and confers no rights or warranties.