PowerShell

The PowerShell forum accepts bug reports as well as feedback and suggestions. For more information, check out the PowerShell Homepage

The following is a list of the states we use to track items.

status meaning
survey We saw this and we are considering it. Please upvote if it’s important to you.
needs more information We don’t understand the issue and need additional details.
investigating We are looking at this internally to understand things like: scenario, reproduction of issue, costing, or other technical details.
in queue The issue is understood and in our unprioritized backlog. Your votes will be used to drive prioritization of this work.
  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. BUG: The certificate for the WMF 5.1 setup has expired WMF 5.1 cannot be installed

    The certificate for Win7AndW2K8R2-KB3191566-x64.msu has expire and installing WMF 5.1 fails with the following error in Event Log/Windows Logs/Setup

    Windows update "Update for Windows (KB3191566)" could not be installed because of error 2148204801 "A required certificate is not within its validity period when verifying against the current system clock or the timestamp in the signed file." (Command line: ""C:\Windows\system32\wusa.exe" "C:\Users\username\Downloads\Win7AndW2K8R2-KB3191566-x64\Win7AndW2K8R2-KB3191566-x64.msu" ")

    Is WMF 5.1 still supported?

    3 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    5 comments  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  2. [BUG] Configuration enact fails when resource instances of same type have different PSDscRunAsCredentials

    Take a look at the following configuration:
    $configurationData =
    @{

    AllNodes =
    
    @(
    @{
    NodeName = 'S16-01'
    PsDscAllowPlainTextPassword = $true
    PSDscAllowDomainUser = $true
    }
    )

    }

    Configuration DSCRunDemo
    {

    param (
    
    [pscredential] $Credential
    )
    Import-DscResource -ModuleName PSDesiredStateConfiguration

    Node $AllNodes.NodeName
    {
    Script DSCRunDemo1
    {
    SetScript =
    {
    Write-Verbose -Message $(whoami)
    }
    TestScript =
    {
    return $false
    }
    GetScript =
    {
    return @{}
    }
    PsDscRunAsCredential = $Credential
    }

    Script DSCRunDemo2
    {
    SetScript =
    {
    Write-Verbose -Message $(whoami)
    }
    TestScript =
    {
    return $false
    }
    GetScript =
    {
    return @{}
    }
    }
    }

    }

    DSCRunDemo -ConfigurationData $configurationData -Credential (Get-Credential)

    One instance of the…

    2 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    investigating  ·  0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  3. [BUG] Cannot import both PSDesiredStateConfiguration in-box module and PSDscResources (gallery module) in the same configuration

    OS: Windows Server 2016 1607 (14393.1593)
    PSVersionTable:
    Name Value


    PSVersion 5.1.14393.1532

    PSEdition Desktop

    PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}

    BuildVersion 10.0.14393.1532

    CLRVersion 4.0.30319.42000

    WSManStackVersion 3.0

    PSRemotingProtocolVersion 2.3

    SerializationVersion 1.1.0.1

    PSDscResource module: v2.8.0.0

    Take a look at this configuration:
    Configuration DependentConfig
    {

    Import-DscResource -ModuleName PSDscResources -Name Registry
    
    

    Node MyNode01
    {

    File SetupScript
    {
    DestinationPath = 'C:\Scripts\hello.txt'
    Contents = 'somecommand'
    Type = 'File'
    Ensure = 'Present'
    DependsOn = '[Registry]regCheck'
    }

    Registry regCheck
    {
    Key = 'HKEY_LOCAL_MACHINE\SYSTEM\SomeKey'
    ValueName = 'SomeValue'
    ValueData = 0
    ValueType = 'DWord'
    Ensure = 'Present'
    }
    }

    }

    DependentConfig -OutputPath C:\DependentConfig

    This requires PSDscResources module version 2.8.0.0 from the gallery…

    4 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    investigating  ·  4 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  4. WMF 5.1 breaks class registrations for the ConfigMgr client agent

    I've localized this issue to WMF 5.1 on Windows 7. With this installed, the WMI namespace: root\ccm\policy\defaultmacine\requestedconfig becomes invalid. This is important because in In-Place upgrade scenarios from Windows 7 to Windows 10, the task sequence agent cannot resume the task sequence without being able to read this namespace. I know this is a combination of WMF and ConfigurationManager so I will post there as well.

    2 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  WMI  ·  Flag idea as inappropriate…  ·  Admin →

    This issue was recently reported via another channel, and is being actively investigated.
    Don’t have an ETA at this time, but will update this thread as we learn more.

  5. Message Cannot unprotect message. The input contained no encrypted content

    When upgrading to WMF 5.1, we are seeing errors in the DSC event log on servers that use a configuration with encrypted content (passwords). We are using encrypted credentials to create application pools and assign a service account as the identity. The data gets decrypted fine and the app pools get created with the correct identities. However the following error gets logged in the DSC event log every time a consistency check runs:

    Job :
    Message Cannot unprotect message. The input contained no encrypted content. Specify the '-IncludeContext' parameter if you wish to output the original content when no encrypted…

    2 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    investigating  ·  0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  6. Bug: DSC Decryption across Servers not Working

    On 2 Fully Updated Windows Server 2016 Machines running and provisioned from Azure I have created a Pull Server Configuration. I have created the DSC Signing Certificate using a custom template on a Enterprise Root CA which has worked for 2012R2 nodes and also tested using xDSCUtils New-xSelfSignedDscEncryptionCertificate. Using the same Certificate to Compile and Execute the MOF on the same Computer works, it is only if you compile on one and execute on another that the problems arise.
    I kept getting errors when passing in credentials. I therefore wrote a tiny custom DSC Resource that Displays the Password as…

    2 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    investigating  ·  0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  7. Creators update: stop-computer : Privilege not held

    I ran into this one, after I noticed my newly patched workstation was still turned on in the morning even though I had explicitly requested it to shutdown at a certain time. Basically the repro steps are as follows:

    > Open Non-Administrative Shell
    > Stop-Computer
    Output:
    stop-computer : Privilege not held.
    At line:1 char:1
    + stop-computer
    + ~~~~~~~~~~~~~

    + CategoryInfo          : InvalidOperation: (***:String) [Stop-Computer], ManagementException
    
    + FullyQualifiedErrorId : StopComputerException,Microsoft.PowerShell.Commands.StopComputerCommand

    Administrative shell works as expected, this specific workstation has never participated in any fast/slow ring builds. Windows version is 15063.138

    Another Windows 10 system, fast ring, that is on build 15063.14…

    2 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →

    FYI, we’re aware of this problem and are currently investigating it.

    Other threads here that we’re aware of:

    I THINK we understand the problem, but I can’t offer an ETA on a fix right now, unfortunately.

  8. partial

    Hi all,
    I am using DSC partials to create role-based architectures with Azure virtual machines.
    When switching to Windows 2016 (everything works great on Windows 2012 R2), I get errors when DSC is compiling the MOF.
    The idea is that I have multiple partials that contain the same Windows Feature installation, because it's needed for a certain roles. When I apply more roles on the same machine, the partials need to merge. So I have one partial that contains this:

        WindowsFeature DotNetFrameworkRole1
    
    {
    Name = 'AS-NET-Framework'
    }

    and another partial that contains this:

        WindowsFeature DotNetFrameworkRole2
    
    {
    Name = 'AS-NET-Framework'
    }
    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    investigating  ·  1 comment  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  9. Find-Module and Install-Module does not get the modules from the custom nuget fileshare repositories though they are registered successfully

    PS C:\Windows\system32> Get-PSRepository

    Name InstallationPolicy SourceLocation


    PSGallery Untrusted https://www.powershellgallery.com/api/v2/

    TestRepo Trusted \NugetServer\BMNNuGet\packages

    PS C:\Windows\system32> Find-Module * -Repository TestRepo

    Version Name Repository Description


    1.0.1 cConfigNode TestRepo Provides a way to manipulate nodes of the xml configu...
    1.3.0 cNtfsAccessControl TestRepo The cNtfsAccessControl module contains DSC resources ...
    3.2.0 xNetworking TestRepo Module with DSC Resources for Networking area

    1.0.0 xReleaseManagement TestRepo Host a custom DSC Resource to transform files based o...
    1.17.0 xWebAdministration TestRepo Module with DSC Resources for Web Administration

    PS C:\Windows\system32> Find-Module xNetworking -Repository TestRepo
    PackageManagement\Find-Package : No match was found for the specified search criteria and module name 'xNetworking'. Try …

    2 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  PowerShell Gallery  ·  Flag idea as inappropriate…  ·  Admin →

    Sorry for the long lag in responding to this, all I can say is that we missed it.

    This problem is not something we’re familiar with. If the problem is still repro’ing, please try re-running your commands with -Verbose, and attach the information to this thread.

    One additional question that might help us: what version of the NuGet server are you using?

  10. workflow common parameters

    The WorkflowCommonParameters entry is missing from help for workflows.

    PowerShell workflows have both common parameters and workflow common parameters.

    Get-Help help for workflows has an entry in the Parameters section for CommonParameters, but not for WorkflowCommonParameters. It needs both.

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  11. INPUTS and OUTPUTS section of get-help not displaying properly

    Problem description

    INPUTS and OUTPUTS section of get-help -Full content shows some unwanted tab and new line characters for almost all cmdlets.

    For e.g.,

    get-help content with INPUTS and OUTPUTS section highlighted where extra new line and tab comes for every cmdlet help content.

    INPUTS

    PSObject OR array of PSObject OR String OR array of String
    
    

    You can pipe one IP address or a list of IP addresses as Strings, or one PSObject or list of PSObjects having
    the iLO details such as IP Address, Hostname, Username and Password to access the iLO.

    OUTPUTS

        PSObject[] is returned. Use Get-Member to
    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  12. No StdOut output on console until second object

    Let me explain. I have a script that is collecting data, and I send it to StdOut by simply piping it into Select (but problem also happens if I add a ForEach loop and simply make [PSCustomObject] objects). Then my script loops to the next server. That output is not displaying on the screen. All is not lost though, when the script loops to the second server and displays both the first and second will now display. When the third server finishes it displays OK, as does the 4th.

    So it looks like it's just the first one. Normally I…

    5 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    3 comments  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  13. Powershell (self) update

    It would be very helpful if we could update PowerShell to newest version through PS package manager or OS included script - with all dependencies and prerequisites checks.

    8 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Package Management  ·  Flag idea as inappropriate…  ·  Admin →

    This is definitely something we’re thinking about and working towards. The question becomes whether it’s “good enough” to update all the built-in modules (like MS.PS.Utility or MS.PS.Management) via PowerShellGet or if we need to actually update PowerShell itself.

    As we work on PowerShell Core on GitHub (https://github.com/powershell/powershell) we’re beginning to think about how more engine work might be abstracted into individual modules (which, again, could be updated async from the Gallery).

    That being said, there also is probably some value in installing PowerShell Core all up via “Install-Package” or “Update-Package”. Given that PS Core is fully side-by-side enabled, you could slap down a new version of PowerShell Core next to the one from which you’re actually running PowerShell Core.

    At the same time, updating Windows PowerShell (the Windows-only edition of PowerShell that sits on top of the full, .NET Framework) from within Windows PowerShell is significantly trickier…

  14. Custom cmdlet help is broken in 5.0+

    Custom cmdlet help gets custom help for a provider cmdlet in a provider drive. In 5.0, the provider help, including custom cmdlet help, was missing. It's restored in 5.1, but it's not working.

    Ugh, I can't post a screenshot.

    Here's the repro:

    1) Get-Help Get-ChildItem -Path Cert: -Parameter DnsName
    [Should succeed; fails]

    2) cd Cert:
    PS Cert:> Get-Help Get-ChildItem -Parameter DnsName
    [Should succeed; fails]



    1. Verify that parameter exists

      PS Cert:> (gcm Get-ChildItem).ParameterSets.Parameters | where Name -eq DnsName
      [succeeds]




    2. Verify that content is in help file.

      PS Cert:> [xml]$SecHelp = cat $pshome\en-US\Microsoft.PowerShell.Commands.Security.dll-help.xml



    PS Cert:>($SecHelp.helpItems.providerHelp.CmdletHelpPaths.CmdletHelpPath.command | where {$_.details.Name.Trim() -eq 'Get-ChildItem}).Parameters.Parameter | where…

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    investigating  ·  1 comment  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  15. WinRM "concurrent operations" increase to eventual failure

    Concurrent operations on an open shell always increase (eg, for each command run) even when the Terminate signal message is sent and (apparently) properly processed after each command. This eventually causes the MaxConcurrentOperationsPerUser quota to be hit, requiring a new shell to be created.

    A simple reproduction using pywinrm is available at: https://github.com/diyan/pywinrm/issues/124. I'm guessing there's just something wrong with the way the Terminate signal is being sent by pywinrm, but the server appears to be happy with it.

    To run the repro, ensure python and pip are available, create a file with the repro code (and adjust the…

    2 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    investigating  ·  0 comments  ·  WinRM  ·  Flag idea as inappropriate…  ·  Admin →
  16. Certain PowerShell ISE windows screws up alt+tabbing

    It looks like certain windows are screwed up in Windows 10 w.r.t. to it's alt+tab handling.


    1. The modal:

    a. Open PowerShell ISE
    b. Go to Tools | Options...

    Now try to alt+tab away from the "Options" window.

    The first alt+tab entry is the "main PowerShell ISE" window which if you alt+tab to that, takes you right back into the "Options" window. So it takes 2 alt+tabs to escape from the "Options" window rather than the expected 1 alt+tab.


    1. The non-modal "Edit | Find in Script..." suffers from the above problem as well.


    2. The modal "Edit | Go To Line..." seems…

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    investigating  ·  0 comments  ·  ISE and tooling  ·  Flag idea as inappropriate…  ·  Admin →
  17. Help for FileSystem dynamic parameters of Get-ChildItem are broken

    The FileSystem provider adds the following dynamic parameters to Get-ChildItem:

    PS C:> (Get-Command Get-ChildItem).ParameterSets.Parameters | where IsDynamic | foreach Name | Sort -Unique

    Attributes

    Directory
    File
    Hidden
    ReadOnly
    System

    But, these are all failing in Get-Help in the file system drives.

    PS C:> $dynam | foreach { if (!(Get-Help Get-ChildItem -Parameter $ -ErrorAction SilentlyContinue)) { $ } }
    Attributes
    Directory
    File
    Hidden
    ReadOnly
    System

    Unlike the related bugs I've filed, I can't find the error in the help file. These parameters are (correctly) not documented in the cmdlet help, and they are correctly documented in the provider help.

    PS C:>…

    4 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    investigating  ·  0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  18. Help for DocumentEncryptionCert dynamic parameter is missing

    There is no help content for the Document EncryptionCert dynamic parameter of Get-ChildItem.

    Because this dynamic parameter is added by the Certificate provider, it should be documented in the <providerHelp>&lt;cmdletHelpPaths> section of Microsoft.PowerShell.Security.dll-help.xml.

    5 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    investigating  ·  1 comment  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  19. Help for dynamic parameters of Add-Content is broken

    Dynamic parameters of a cmdlet that are added by a provider are documented in the <providerHelp>&lt;cmdletHelpPaths> element of the help XML file.

    The FileSystem provider adds the following parameters to Add-Content:

    PS C:&gt; (Get-Command Add-Content).ParameterSets.Parameters | Where IsDynamic | foreach Name | Sort -Unique
    Encoding
    NoNewline
    Stream

    However, the Encoding and Stream parameters are documented in the primary help file, Microsoft.PowerShell.Commands.Management.dll-help.xml, so they appear in Get-Help even in provider drives where the parameter is not valid.

    PS Function:&gt; (Get-Help Add-Content -Path function:).Parameters.Parameter | where Name -notin $common | foreach Name | Sort -Unique
    Credential
    Encoding # <----
    Exclude
    Filter
    Force …

    6 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    investigating  ·  0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  20. WMF5.1(?) Code completion fails to complete a parameter

    In the PowerShell console type

    Export-ModuleMember -a
    

    and press Tab in order to complete the parameter Alias.
    As a result, nothing happens. Take a look at $Error:

    PS&gt; $Error
    
    Exception calling &quot;CompleteInput&quot; with &quot;3&quot; argument(s): &quot;Index was out of range. Must be non-negative and less than the size of the collection.
    Parameter name: index&quot;
    At line:38 char:16
    + ... return [System.Management.Automation.CommandCompletion]::Complet ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : ArgumentOutOfRangeException

    Note that completion of other parameters works.

    2 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
← Previous 1 3 4
  • Don't see your idea?

Feedback and Knowledge Base