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. PowerShell does not update ref and out parameters when method throw exception

    Add-Type -TypeDefinition @'

    public static class C {
    
    public static void M(ref int refint, out int outint) {
    refint=10;
    outint=20;
    throw new System.Exception();
    }
    }

    '@
    $a=0
    $b=0
    $a
    $b

    $a and $b will have old value: 0, although method change passed parameters.

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

    We’ll send you updates on this idea

    0 comments  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  2. Service DSC resource should not have a default $State

    The Service DSC resource defaults to state = running. It would be great to be able to say "I want to make sure the service is installed, but I don't care what state it's currently in."

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

    We’ll send you updates on this idea

    2 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
    investigating  ·  Mark Gray responded

    Thanks for the feedback!

    We will take this into consideration in a future release.

    MarkG

  3. The $foreach iterator does not behave properly when processing tokens

    This is a bug in PowerShell 2.0 and later versions (i.e. not a regression).

    The $foreach iterator does not advance inside of a foreach loop when processing tokens that come from the PowerShell parser. For example:

    $Filter = 'foo -eq $false'
    foreach ($token in [System.Management.Automation.PSParser]::Tokenize($Filter,([REF]$null))) {

    if ($token.Type -ne [System.Management.Automation.PSTokenType]::Command) {
    
    continue
    }
    $foreach.MoveNext() > $null
    $foreach.Current

    }

    If you run this, $foreach.Current is $null in the first iteration of the loop (this is wrong), and when you advance the iterator using MoveNext(), it then gets assigned to the first item in the collection.

    The workaround is to force the…

    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 →
  4. Get or Set-WebConfiguration and Get or Set-WebConfigurationProperty does not work for 32-bit applications when pspath is 'MACHINE/WEBROOT'

    When configuring IIS using Powershell, the cmdlets that read or write to configuration do not work when the application pool is 32-bit.

    There is no way of specifying the "bitness" of the application therefore by default the configuration is written to the web.config file in the Framework64 folder which is ignored for 32-bit applications.

    This is also the case for IIS manager when using "Configuration Editor". You can choose the location of "Root Web.Config <location path="my website"> however this ignores whether the application is 32 or 64 bit and always writes to the 64 bit location in the Framework64 folder.

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

    We’ll send you updates on this idea

    0 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  5. ISE should not complain about improperly closed session

    Whenever ISE is started after a system reboot or logoff/logon sequence, and ISE was running before, it complains that "the previous session was not properly closed" even if no unsaved files were loaded.

    On WM_QUERYENDSESSION, it should just save its state and restore it seamlessly at the next startup.

    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  ·  ISE and tooling  ·  Flag idea as inappropriate…  ·  Admin →
  6. Get-Help -online doesn't work for some topics

    This should speak for itself:

    PS > get-help aboutvariables -online
    get-help : The online version of this Help topic cannot be displayed because the Internet address (URI) of the Help topic is not
    specified in the command code or in the help file for the command.
    At line:1 char:1
    + get-help about
    variables -online
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    + CategoryInfo          : InvalidOperation: (:) [Get-Help], PSInvalidOperationException
    
    + FullyQualifiedErrorId : InvalidOperation,Microsoft.PowerShell.Commands.GetHelpCommand

    Given the limitations of Get-Help -ShowWindow, I would expect all help to be available via -Online

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  7. Need CmdLet that returns the effective permissions for file, folders, reg-keys...

    Can you please add a CmdLet that show the effective permissions for a folder, file, reg-key, Ad-entry for a select user or group.

    Example:
    show-effectiveperms -resource F.\data -user testuser

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  8. Add Print and recently used File menu for ISE

    In short make ISE able to replace Notepad.exe (which lacks the line numbering feature)

    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  ·  ISE and tooling  ·  Flag idea as inappropriate…  ·  Admin →
  9. PowerShell ISE: Support F7 (menu) and F8 (complete with history)

    F7 (menu) and F8 (complete with history) are extremely powerful features in the console window. Not having it available in the ISE puts actual GUI trade-offs into play. If I choose the ISE, I should expect to get the most capable GUI, but that's not what I get; instead I get a GUI that's more capable in some ways and less in others.

    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  ·  ISE and tooling  ·  Flag idea as inappropriate…  ·  Admin →
  10. PowerShell 5.0 for Windows 7 does not support syntax highlighting + checking

    The latest build of PS5 in Windows 10 build 10586.36 supports syntax highlighting + checking in the command-line host (powershell.exe).

    This is not the case in powershell.exe 5.0.10586.51 for Windows 7

    Is this a temporary limitation?

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  11. Get-Clipboard returns one object too many in PS5.0

    If I copy three rows of text from Notepad or Excel into the clipboard, Get-Clipboard returns an array of four strings, instead of three.

    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  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  12. Scripts need better isolation from the user's global session state

    Votes from Connect: 4

    Original Date Submitted: 11/28/2015 5:59:49 AM

    Description:
    Contact Information
    Handle: Keith Hill MVP
    Site Name: PowerShell
    Feedback ID: 2065573


    Problem Description:
    Right now it is too hard to write a 100% reliable script that can run in any particular user's PowerShell console. The crux of the problem is that global session state is so varied amongst individual users it is hard to anticipate all possibilities such as:

    •Command proxies
    •Imported (auto or explicit) modules that implement the same named command (but semantically different)
    •Redirected aliases
    •Defined variables you weren't expecting to be defined
    •Removed globals you…

    3 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 Engine  ·  Flag idea as inappropriate…  ·  Admin →
  13. Update-Help : Failed to update Help for the module(s) 'ConfigCI' with UI culture(s) {en-US}

    Votes from Connect: 3

    Original Date Submitted: 11/26/2015 2:36:27 AM

    Description:
    Contact Information
    Handle: Firgeis
    Site Name: PowerShell
    Feedback ID: 2057856


    Frequency: Always Happens
    Regression: I do not know if this issue existed previously

    Problem Description:

    PS C:\Users\Administrator> Update-Help
    Update-Help : Failed to update Help for the module(s) 'ConfigCI' with UI culture(s) {en-US} : The
    HelpInfoUri key in the module manifest must resolve to a container or root URL on a website where
    stored. The HelpInfoUri 'https://technet.microsoft.com/library/cc732148.aspx&#39; does not resolve to
    At line:1 char:1
    + Update-Help
    + ~~~~~~~~~~~

    + CategoryInfo          : InvalidOperation: (:) [Update-Help], Exception
    
    + FullyQualifiedErrorId :
    3 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  14. PowerShell ISE should support F12 for Save-as

    Votes from Connect: 4

    Original Date Submitted: 11/17/2015 1:17:48 AM

    Description:
    Contact Information
    Handle: Stephen Owen
    Site Name: PowerShell
    Feedback ID: 2024431


    Problem Description:
    F12 Save-as is a standard shortcut across windows (Notepad, MSPaint, etc). I think PowerShell ISE should maintain this standard as well.

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 2024431 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=2024431).

    Repro Steps:

    Internal BugId: 15980

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

    We’ll send you updates on this idea

    0 comments  ·  ISE and tooling  ·  Flag idea as inappropriate…  ·  Admin →
  15. Add a new $PSModule standard variable

    Votes from Connect: 11

    Original Date Submitted: 11/16/2015 11:31:50 PM

    Description:
    Contact Information
    Handle: Stephen Owen
    Site Name: PowerShell
    Feedback ID: 2024074


    Problem Description:
    I find it very tiresome to have to specify $env:ProgramFiles\WindowsPowerShell\Modules in all of my modules. What a pain in the butt!

    Why not add a new standard variable called $PSModulePath or something similar, to make this automatic?

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 2024074 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=2024074).

    Repro Steps:

    Internal BugId: 15978

    3 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 Engine  ·  Flag idea as inappropriate…  ·  Admin →
  16. New #requires parameters: -DotSource/-CallOperator, to allow script authors to indicate how the script must be invoked

    Votes from Connect: 8

    Original Date Submitted: 11/5/2015 5:13:13 AM

    Description:
    Contact Information
    Handle: Kirk Munro
    Site Name: PowerShell
    Feedback ID: 1981963


    Problem Description:
    Scripts are designed to be either dot-sourced, called, or much less often, both. Yet the vast majority of scripts out there don't have anything in place to make sure that they were invoked the right way. This can lead to a lot of confusion for script consumers that could be easily avoided.

    I would like to see the #requires statement expanded with the addition of two new parameters: -DotSource and -CallOperator. When a script is invoked,…

    3 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 Engine  ·  Flag idea as inappropriate…  ·  Admin →
  17. Bug Get-Help Get-Help -Full

    Votes from Connect: 1

    Original Date Submitted: 8/19/2015 6:21:37 PM

    Description:
    Contact Information
    Handle: H_Ski
    Site Name: PowerShell
    Feedback ID: 1686799


    Frequency: Documentation
    Regression:

    Problem Description:
    PSv4 and PSv5 with updated help (2015-august-19):

    .Input says: You can not pipe objects to Get-Help
    BUT
    Get-Help Get-Help -parameter name says: Accept pipeline input? true (ByPropertyName)

    In v5 if you do get-help get-help -full help for gcm and get-item also shows up.

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 1686799 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=1686799).

    Repro Steps:
    Expected Results:

    Internal BugId: 15748

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

    We’ll send you updates on this idea

    0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  18. Powershell 5 enum definitions

    Votes from Connect: 3

    Original Date Submitted: 8/11/2015 6:16:25 PM

    Description:
    Contact Information
    Handle: SamiKoskivaara
    Site Name: PowerShell
    Feedback ID: 1654123


    Frequency: PowerShell
    Regression: Create two enums, explicitly define a variable to have named enum type, assign value to that variable from another enum type. It does not give an error message that the value is not from the right enum type.

    Problem Description:
    If I define two enums 'Size' and 'PizzaType'

    Enum Size {

    Small
    
    Medium
    Large

    }

    Enum PizzaType {

    Margherita
    
    Vegetariana
    Peperoni

    }

    and then I want to explicitly say that my variable $a is [PizzaType] it…

    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 →
  19. Invoke-WebRequest doesn't work with protocol-relative URLs

    Votes from Connect: 4

    Original Date Submitted: 7/8/2015 11:36:23 AM

    Description:
    Contact Information
    Handle: Trevor Sullivan [MVP]
    Site Name: PowerShell
    Feedback ID: 1519608


    Frequency: PowerShell
    Regression: 1. Use the Invoke-WebRequest command to call a protocol-relative URL
    2. Exception occurs: "iwr : Invalid URI: The hostname could not be parsed."

    Problem Description:
    Invoke-WebRequest doesn't work with protocol-relative URLs.

    http://www.paulirish.com/2010/the-protocol-relative-url/

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 1519608 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=1519608).

    Repro Steps:
    1. Use the Invoke-WebRequest command to call a protocol-relative URL
    2. Exception occurs: "iwr : Invalid URI: The hostname could not be parsed."

    3 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 Engine  ·  Flag idea as inappropriate…  ·  Admin →
  20. Registering an internal repository with PowerShellGet requires an internet connection

    Votes from Connect: 7

    Original Date Submitted: 7/7/2015 11:40:08 PM

    Description:
    Contact Information
    Handle: bobdean
    Site Name: PowerShell
    Feedback ID: 1518092


    Problem Description:
    PS C:&gt; Register-PSRepository -Name InternalNuget -SourceLocation https://nexussrv1/service/local/nuget/nuget-releases/
    -InstallationPolicy Trusted -PublishLocation https://nexussrv1/service/local/nuget/nuget-releases/
    WARNING: Unable to download the list of available providers. Check your internet connection.

    Servers should not require administrators to set proxy settings that enable internet connectivity to leverage an internal NuGet based repository - even if it is only a one time event.

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 1518092 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=1518092).

    Repro Steps:

    Internal BugId: 15630

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

    We’ll send you updates on this idea

    0 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  • Don't see your idea?

Feedback and Knowledge Base