Downloads:

3,394,887

Downloads of v 4.0.20141001:

135,019

Last Update:

10/6/2014

Package Maintainer(s):

Software Author(s):

  • Microsoft wrote PowerShell
  • IntelliTect created the Chocolatey Package

Tags:

PowerShell admin Reboot Scripting

Windows Management Framework and PowerShell

This is not the latest version of Windows Management Framework and PowerShell available.

4.0.20141001 | Updated: 10/6/2014

Downloads:

3,394,887

Downloads of v 4.0.20141001:

135,019

Software Author(s):

  • Microsoft wrote PowerShell
  • IntelliTect created the Chocolatey Package

Windows Management Framework and PowerShell 4.0.20141001

This is not the latest version of Windows Management Framework and PowerShell available.

Some Checks Have Failed or Are Not Yet Complete

1 Test Unknown and 1 Passing Test


Validation Testing Unknown


Verification Testing Passed

Details

To install Windows Management Framework and PowerShell, run the following command from the command line or from PowerShell:

>

To upgrade Windows Management Framework and PowerShell, run the following command from the command line or from PowerShell:

>

To uninstall Windows Management Framework and PowerShell, run the following command from the command line or from PowerShell:

>

NOTE: This applies to both open source and commercial editions of Chocolatey.

1. Ensure you are set for organizational deployment

Please see the organizational deployment guide

  • Open Source or Commercial:
    • Proxy Repository - Create a proxy nuget repository on Nexus, Artifactory Pro, or a proxy Chocolatey repository on ProGet. Point your upstream to https://chocolatey.org/api/v2. Packages cache on first access automatically. Make sure your choco clients are using your proxy repository as a source and NOT the default community repository. See source command for more information.
    • You can also just download the package and push it to a repository Download

3. Enter your internal repository url

(this should look similar to https://chocolatey.org/api/v2)

4. Choose your deployment method:


choco upgrade powershell -y --source="'STEP 3 URL'" [other options]

See options you can pass to upgrade.

See best practices for scripting.

Add this to a PowerShell script or use a Batch script with tools and in places where you are calling directly to Chocolatey. If you are integrating, keep in mind enhanced exit codes.

If you do use a PowerShell script, use the following to ensure bad exit codes are shown as failures:


choco upgrade powershell -y --source="'STEP 3 URL'" 
$exitCode = $LASTEXITCODE

Write-Verbose "Exit code was $exitCode"
$validExitCodes = @(0, 1605, 1614, 1641, 3010)
if ($validExitCodes -contains $exitCode) {
  Exit 0
}

Exit $exitCode

- name: Ensure powershell installed
  win_chocolatey:
    name: powershell
    state: present
    version: 4.0.20141001
    source: STEP 3 URL

See docs at https://docs.ansible.com/ansible/latest/modules/win_chocolatey_module.html.

Coming early 2020! Central Managment Reporting available now! More information...


chocolatey_package 'powershell' do
  action    :install
  version  '4.0.20141001'
  source   'STEP 3 URL'
end

See docs at https://docs.chef.io/resource_chocolatey_package.html.


Chocolatey::Ensure-Package
(
    Name: powershell,
    Version: 4.0.20141001,
    Source: STEP 3 URL
);

Requires Otter Chocolatey Extension. See docs at https://inedo.com/den/otter/chocolatey.


cChocoPackageInstaller powershell
{
   Name     = 'powershell'
   Ensure   = 'Present'
   Version  = '4.0.20141001'
   Source   = 'STEP 3 URL'
}

Requires cChoco DSC Resource. See docs at https://github.com/chocolatey/cChoco.


package { 'powershell':
  provider => 'chocolatey',
  ensure   => '4.0.20141001',
  source   => 'STEP 3 URL',
}

Requires Puppet Chocolatey Provider module. See docs at https://forge.puppet.com/puppetlabs/chocolatey.


salt '*' chocolatey.install powershell version="4.0.20141001" source="STEP 3 URL"

See docs at https://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.chocolatey.html.

5. If applicable - Chocolatey configuration/installation

See infrastructure management matrix for Chocolatey configuration elements and examples.

This package was approved by moderator ferventcoder on 10/26/2014.

Description

Windows Management Framework includes updates to Windows PowerShell, Windows PowerShell ISE, Windows PowerShell Web Services (Management OData IIS Extension), Windows Remote Management (WinRM), Windows Management Instrumentation (WMI), the Server Manager WMI provider, and a new feature for 4.0, Windows PowerShell Desired State Configuration (DSC).

    IMPORTANT NOTES for your Operating System:
        Windows Vista or Windows 2008: PowerShell 3.0 install attempted
        Windows 7 SP1, Windows 2008 R2, or Windows 2012: PowerShell 4.0 installed
        Windows 8: PowerShell 4.0 not supported.  PowerShell 3.0 installed by default
        Windows 8.1, Windows 2012R2: Preinstalled with PowerShell 4.0. (Fails)

tools\ChocolateyInstall.ps1


<#
See http://technet.microsoft.com/en-us/library/hh847769.aspx and http://technet.microsoft.com/en-us/library/hh847837.aspx
Windows PowerShell 4.0 runs on the following versions of Windows.
    Windows 8.1, installed by default
    Windows Server 2012 R2, installed by default
    Windows� 7 with Service Pack 1, install Windows Management Framework 4.0 (http://go.microsoft.com/fwlink/?LinkId=293881) to run Windows PowerShell 4.0
    Windows Server� 2008 R2 with Service Pack 1, install Windows Management Framework 4.0 (http://go.microsoft.com/fwlink/?LinkId=293881) to run Windows PowerShell 4.0

Windows PowerShell 3.0 runs on the following versions of Windows.
    Windows 8, installed by default
    Windows Server 2012, installed by default
    Windows� 7 with Service Pack 1, install Windows Management Framework 3.0 to run Windows PowerShell 3.0
    Windows Server� 2008 R2 with Service Pack 1, install Windows Management Framework 3.0 to run Windows PowerShell 3.0
    Windows Server 2008 with Service Pack 2, install Windows Management Framework 3.0 to run Windows PowerShell 3.0
#>

try
{
  [string]$packageName="PowerShell.4.0"
  [string]$installerType="msu"
  [string]$silentArgs="/quiet /norestart /log:`"$env:TEMP\PowerShell.v4.Install.log`""
  [string]$url   = 'http://download.microsoft.com/download/3/D/6/3D61D262-8549-4769-A660-230B67E15B25/Windows6.1-KB2819745-x86-MultiPkg.msu' 
  [string]$url64 = 'http://download.microsoft.com/download/3/D/6/3D61D262-8549-4769-A660-230B67E15B25/Windows6.1-KB2819745-x64-MultiPkg.msu' 
  [string]$urlWin2012 = 'http://download.microsoft.com/download/3/D/6/3D61D262-8549-4769-A660-230B67E15B25/Windows8-RT-KB2799888-x64.msu' 
  [string[]] $validExitCodes = @(0, 3010) # 2359302 occurs if the package is already installed.

  if ($PSVersionTable -and ($PSVersionTable.PSVersion -ge [Version]'4.0'))
  {
    Write-Warning "$packageName or newer is already installed"
  }
    else {
        $osversionLookup = @{
        "5.1.2600" = "XP";
        "5.1.3790" = "2003";
        "6.0.6001" = "Vista/2008";
        "6.1.7601" = "Win7/2008R2";
        "6.2.9200" = "Win8/2012";
        "6.3.9600" = "Win8.1/2012R2";
        }

        try {
            #Consider using Get-Command with -ErrorAction of Ignore
            $osVersion = (Get-CimInstance "Win32_OperatingSystem").Version #Not supported prior to Windows 8//2012
        }
        catch {
            $osVersion = (Get-WmiObject Win32_OperatingSystem).Version
        }
    
        switch ($osversionLookup[$osVersion]) {
            "Vista/2008" {
                Write-Warning "$packageName not supported on your OS.  Attempting to install PowerShell 3.0"
                cinst PowerShell -version 3.0.20121027
            }
            "Win7/2008R2" {
                Install-ChocolateyPackage "$packageName" "$installerType" "$silentArgs" "$url" "$url64"  -validExitCodes $validExitCodes
                Write-Warning "$packageName requires a reboot to complete the installation."
                Write-ChocolateySuccess $packageName
            }
            "Win8/2012" {
                $os = (Get-CimInstance "Win32_OperatingSystem")
                if($os.ProductType -eq 3) {
                    Install-ChocolateyPackage "$packageName" "$installerType" "$silentArgs" $urlWin2012  -validExitCodes $validExitCodes
                    Write-Warning "$packageName requires a reboot to complete the installation."
                }
                else {
                    throw "$packageName not supported on Windows 8. You must upgrade to Windows 8.1 to get WMF 4.0."
                }
            }
            "Win8.1/2012R2" {
                throw "Should not get here because we already checked `$PSVersionTable.PSVersion, '$($PSVersionTable.PSVersion)', -ge $([Version]'4.0')"
            }
            default { 
                # Windows XP, Windows 2003, Windows Vista, or unknown?
                throw "$packageName is not supported on this operating system (Windows XP, Windows 2003, Windows Vista, or ?)."
            }
        }
    }
}
catch {
  Write-ChocolateyFailure $packageName $($_.Exception.Message)
}


tools\chocolateyUninstall.ps1
Write-Debug ("Starting " + $MyInvocation.MyCommand.Definition)

[string]$packageName="PowerShell.4.0"

<#
Exit Codes:
    3010: WSUSA executed the uninstall successfully.
    2359303: The update was not found.
#>

Start-ChocolateyProcessAsAdmin "/uninstall /KB:2819745 /quiet /norestart /log:`"$env:TEMP\PowerShell.v4.Uninstall.log`"" -exeToRun "WUSA.exe" -validExitCodes @(3010,2359303) 
Start-ChocolateyProcessAsAdmin "/uninstall /KB:2799888 /quiet /norestart /log:`"$env:TEMP\PowerShell.v4.Uninstall.log`"" -exeToRun "WUSA.exe" -validExitCodes @(3010,2359303)

Write-Warning "$packageName may require a reboot to complete the uninstallation."

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.

Version Downloads Last Updated Status
Windows Management Framework and PowerShell 5.1.14409.20180105 546137 Saturday, January 6, 2018 Approved
Windows Management Framework and PowerShell 5.1.14409.20170510 872446 Thursday, May 11, 2017 Approved
Windows Management Framework and PowerShell 5.1.14409.20170402 223523 Monday, April 3, 2017 Approved
Windows Management Framework and PowerShell 5.1.14409.20170301 76376 Thursday, March 2, 2017 Approved
Windows Management Framework and PowerShell 5.1.14409.20170214 73016 Tuesday, February 14, 2017 Approved
Windows Management Framework and PowerShell 5.1.14409.1005 34872 Monday, January 30, 2017 Approved
Windows Management Framework and PowerShell 5.0.10586.20170115 45570 Monday, January 16, 2017 Approved
Windows Management Framework and PowerShell 5.0.10586.20161216 37017 Friday, December 16, 2016 Approved
Windows Management Framework and PowerShell 5.0.10586.20161201 5359 Thursday, December 8, 2016 Exempted

2014.10.01:
Changed to report success when PowerShell 4.0 is already installed.

        2014.09.15: 
            Support added for PowerShell 4.0

This package has no dependencies.

Discussion for the Windows Management Framework and PowerShell Package

Ground Rules:

  • This discussion is only about Windows Management Framework and PowerShell and the Windows Management Framework and PowerShell package. If you have feedback for Chocolatey, please contact the Google Group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or Windows Management Framework and PowerShell, or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.
comments powered by Disqus