none
How Do I Update the Help Files for Windows PowerShell 3.0? Update-Help Cmdlet Fails

    Question

  • Hello,

    In the online help for Windows Powershell 3.0 you may find the following:

    Windows PowerShell 3.0 does not come with help files. To download and install the help files that Get-Help reads, use the Update-Help cmdlet. You can use the Update-Help cmdlet to download and install help files for the core commands that come with Windows PowerShell  and for any modules that you install. You can also use it to update the help files so that the help on your computer is never outdated.

    However, running the Update-Help cmdlet in the elevated PoSh shell returns:

    PS C:\Windows\system32> Update-Help
    Update-Help : The given key was not present in the dictionary.
    At line:1 char:1
    + Update-Help
    + ~~~~~~~~~~~
        + CategoryInfo          : NotSpecified: (:) [Update-Help], KeyNotFoundException
        + FullyQualifiedErrorId : System.Collections.Generic.KeyNotFoundException,Microsoft.PowerShell.Commands.UpdateHelpCommand

    How do I download and update the offline help files for reading extended help right within the standard output?

    Thank you.


    Well this is the world we live in And these are the hands we're given...

    Friday, May 04, 2012 12:40 PM

Answers

  • Hi, for those that get the same error, I discover that running the command from the PowerShell ISE (both x86 or x64) fails whereas running the command into Windows PowerShell directly works! on Windows 8 and Windows Server 2012

    • Proposed as answer by Alain B-H Friday, October 19, 2012 9:36 AM
    • Marked as answer by Exotic Hadron Saturday, November 03, 2012 11:08 PM
    Friday, October 19, 2012 9:36 AM
  • This was the answer for me as well.  I tried within ISE and no go, but from within PS command console directly, no problems.  
    Saturday, November 03, 2012 7:34 AM
  • Nope, as far as I rememer, PowerShell is case-insensiteve by default. There's been a good video posted by Jeffrey Snover. Here it is: http://blogs.msdn.com/b/powershell/archive/2009/01/08/case-insensitivity.aspx

    You know what? It worked for me today, all of a sudden. In any case!

    My case-insensitive thank to all of you for your help. Thank you!


    Well this is the world we live in And these are the hands we're given...

    • Marked as answer by Exotic Hadron Saturday, May 05, 2012 12:40 PM
    Saturday, May 05, 2012 11:34 AM

All replies

  • Hi

    Update-Help works for me so I can't reproduce the error.  I know this can be related to permissions but probably not UAC - If you run the commandlet without elevation then the error is different.

    Steve

    Friday, May 04, 2012 2:22 PM
  • are powershell command case sensitive? try all small letters:

    update-help

    like shown here:

    http://blogs.msdn.com/b/virtual_pc_guy/archive/2012/04/09/updating-powershell-help-on-windows-8.aspx


    "A programmer is just a tool which converts caffeine into code"

    Friday, May 04, 2012 10:38 PM
    Answerer
  • Nope, as far as I rememer, PowerShell is case-insensiteve by default. There's been a good video posted by Jeffrey Snover. Here it is: http://blogs.msdn.com/b/powershell/archive/2009/01/08/case-insensitivity.aspx

    You know what? It worked for me today, all of a sudden. In any case!

    My case-insensitive thank to all of you for your help. Thank you!


    Well this is the world we live in And these are the hands we're given...

    • Marked as answer by Exotic Hadron Saturday, May 05, 2012 12:40 PM
    Saturday, May 05, 2012 11:34 AM
  • Hi, for those that get the same error, I discover that running the command from the PowerShell ISE (both x86 or x64) fails whereas running the command into Windows PowerShell directly works! on Windows 8 and Windows Server 2012

    • Proposed as answer by Alain B-H Friday, October 19, 2012 9:36 AM
    • Marked as answer by Exotic Hadron Saturday, November 03, 2012 11:08 PM
    Friday, October 19, 2012 9:36 AM
  • This was the answer for me as well.  I tried within ISE and no go, but from within PS command console directly, no problems.  
    Saturday, November 03, 2012 7:34 AM
  • I know this is a late entry, but I noticed 2 items when running Update-Help on Server 2012 and Windows 08:

    Problem:  The Shortcut in Administrator Tools is:  "Start in" path is %HOMEDRIVE%%HOMEPATH% <-- It does not know where the help repository is stored.  If you type  %windir%\SysWOW64\WindowsPowerShell\v1.0\Powershell_ISE.exe.

    Solution:  Copy the shortcut and modify the "Start in" path to

                     %windir%\SysWOW64\WindowsPowerShell\v1.0

                     %windir%\system32\WindowsPowerShell\v1.0

    Questions:

    On a 64 bit device (Server 2008 R2, Windows 7 Service Pack 1, Windows 08 or 2012 Server), domain or workgroup, configured by myself or someone else does the following happen with the "_ISE" (Windows 2008 R2 and Windows 7 have both PS 2.0 and 3.0 installed along with WinRM):

    type: C:\Windows\SysWOW64\WindowsPowerShell\v1.0\Powershell_ISE.exe and the banner will say "Administrator:Windows PowerShell_ISE (x86):

    type C:\Windows\system32\WindowsPowerShell\v1.0\Powershell_ISE.exe and the banner says "Administrator:Windows PowerShell_ISE"

    I am asking why is it giving the wrong bit for the GUI version?  The normal Powershell.exe opens as expected.  I went ahead and moved the "poweshell_ise.exe" or swapped them and they now update properly and I have no issues updating the library.  I won't reword this again but I have been scripting for over 10 years but am fairly new to powershell, and this is my first post only to find out I am being scored with no explanation.  I originally posted this second part as a answer and have reached out to others.  I believe there is a issue but I have not had issues updating powershell since. 

    Thanks,

    Scott



    • Edited by ScottWeldon Tuesday, May 07, 2013 4:57 PM Points and really there is a issue with powershell and I beleive I have something here.
    Saturday, May 04, 2013 2:19 AM
  • Questions:

    On a 64 bit device (Server 2008 R2, Windows 7 Service Pack 1, Windows 08 or 2012 Server), domain or workgroup, configured by myself or someone else does the following happen with the "_ISE" (Windows 2008 R2 and Windows 7 have both PS 2.0 and 3.0 installed along with WinRM):

    type: C:\Windows\SysWOW64\WindowsPowerShell\v1.0\Powershell_ISE.exe and the banner will say "Administrator:Windows PowerShell_ISE (x86):

    type C:\Windows\system32\WindowsPowerShell\v1.0\Powershell_ISE.exe and the banner says "Administrator:Windows PowerShell_ISE"

    I am asking why is it giving the wrong bit for the GUI version?  The normal Powershell.exe opens as expected.  I went ahead and moved the "poweshell_ise.exe" or swapped them and they now update properly and I have no issues updating the library. 

    Thanks,

    Scott


    Hi Scott,

    System32 holds 64 bit binaries, whereas SysWOW64 is where 32 bit binaries get redirected to by the Windows On Windows redirector. It's confusing but correct, and therefore your action of moving the ise.exe files around is not a good idea.

    See http://msdn.microsoft.com/en-us/library/windows/desktop/aa384187(v=vs.85).aspx for more info on WoW64 File redirector

    Two more links:

    http://www.samlogic.net/articles/32-64-bit-windows-folder-x86-syswow64.htm

    http://blogs.sepago.de/e/helge/2008/04/20/windows-x64-all-the-same-yet-very-different-part-7

    Greetings, Gilford

    Wednesday, May 22, 2013 12:46 AM