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. Add Powershell/ISE to Taskbar by default

    As Powershell is the most common Management Tool on a server, please re-add the Powershell icon to the Taskbar. And also, make it possible to start ISE directly without first starting powershell once.
    First searching for it through the Start menu is a burden, especially when we deploy several of servers each day and need access to posh each time.

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

    We’ll send you updates on this idea

    2 comments  ·  ISE and tooling  ·  Flag idea as inappropriate…  ·  Admin →
  2. Expand-Archive -DestinationPath is not mandatory

    In the help for Expand-Archive, the DestinationPath parameter is mandatory, but that's incorrect. It's optional and the default is the local directory.

    PS C:\ps-test> get-help expand-archive -Parameter destinationpath

    -DestinationPath <String>

    Specifies the path to the folder in which you want the command
    
    specify a file name or file name extension. This parameter is

    Required? true
    Position? 2
    Default value
    Accept pipeline input? false
    Accept wildcard characters? false

    PS C:\ps-test> (get-command expand-archive).ParameterSets.Parameters | where Name -eq DestinationPath | ft Name, IsMandatory

    Name IsMandatory


    DestinationPath False
    DestinationPath False

    Also, -Online still goes to the future site, even in late December 2016.

    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  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  3. Allow Import-DSCResource to leverage PowerShellGet to add missing modules dynamically

    Frequency: current as of WMF4.0 (unknown in 5)

    Right now, DSC is really only valuable in "established" environments with push configurations only looking for local module directories or a "Defined" repository already setup. This makes using DSC in a "consulting capacity" almost useless as I have to no only have a script to establish settings for a new machine ... but I need to copy modules into the right path first.

    It would be awesome if I could add a flag to import-dscresource to tell the configuration to download the modules it needs via PowerShellGet if they are missing (maybe…

    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  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  4. Add the Powershell Guide

    Add the Powershell Guide so that Users can easily find the command.

    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 →
  5. GET-ACL Issue Parsing AD Path With Colon

    Get-Acl has parsing issue with colons

    I load the distinguished names for several containers and computers into a variable for a non-default domain. I defined a new drive for the other domain to use path parameters.

    The following code works because if excludes names with a colon.

    $DomainName = '.'

    $domain = Get-ADDomain -Server $DomainName
    $drive = $domain.NetBIOSName
    if (-not (Test-Path -Path "$drive`:")) {
    $ad_drive = New-PSDrive -Name $drive -PSProvider ActiveDirectory -Root "" -Server $DomainName
    }

    $root = Get-ADRootDSE -Server $DomainName
    $containers = @($root.rootDomainNamingContext) # DC
    $containers += Get-ADOrganizationalUnit -Server $DomainName -Filter * |
    Select-Object -ExpandProperty DistinguishedName #…

    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 →
  6. Load XAML-GUI in Powershell with Show-XAMLDialog

    Load GUI in Powershell with Show-XAMLDialog.

    An XAML Dialog should be possible to load with a built in command and the support for XAML GUIs should be plannend in a long term.

    Started with exemplaric first shot here:
    http://powerintheshell.com/psgui-first-start-3/

    The XAML Dialog must be regexed to catch some errors:
    - removing class
    - using namespace to load the GUI elements
    - Creating variables for all possible GUI elements
    - Replacing / Correcting source-destinations to images etc.
    - Replacing / Correcting relative links
    - may be automatically inserting images as base64 (https://blog.netnerds.net/2015/09/use-base64-for-images-in-powershellwpf-forms/)
    - creating standard dialogs which can easily…

    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 Engine  ·  Flag idea as inappropriate…  ·  Admin →
  7. { not working in ISE with SL keyboard, probably others as well

    Votes from Connect: 19

    Original Date Submitted: 10/29/2015 9:31:39 PM

    Description:
    Contact Information
    Handle: Jan Bocko Kuhar
    Site Name: PowerShell
    Feedback ID: 1958298


    Frequency: PowerShell ISE
    Regression: Switch to SL keyboard layout and try to type {, which is set to AltGr + B in this layout.

    Problem Description:
    { is set to AltGr + b or Ctrl + Alt + B on SL, HR, ... keyboard layouts, which is set to Debugger in PowerShell ISE. This is really annoying when you use this keyboard layouts as you have to switch to other layouts just for the one character, or…

    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 →
  8. Cannot build a binary module referencing 3.0 SMA.dll on Windows 10 without having to retarget to .NET 4.5

    Votes from Connect: 5

    Original Date Submitted: 9/21/2015 7:09:45 AM

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


    Frequency: Other
    Regression: Try to build a binary module on Windows 10 RTM with VS 2015. Reference the 3.0 SMA.dll reference assembly. This will fail to compile.

    Problem Description:
    When I try to build PSCX on Windows 10 - referencing System.Management.Automation.dll version 3.0 in the C:\Program Files (x86)\Reference Assemblies folder, I get a build error in VS 2015:

    C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(1819,5): warning MSB3275: The primary reference "System.Management.Automation, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" could not be resolved because it…

    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 →
  9. $host.ui.prompt default values won't apply

    Votes from Connect: 1

    Original Date Submitted: 8/28/2015 1:18:57 AM

    Description:
    Contact Information
    Handle: ProveIsso
    Site Name: PowerShell
    Feedback ID: 1721069


    Frequency: PowerShell
    Regression: You can use a public example script like this one http://poshcode.org/608
    Result being:

    Key Value


    String Field

    Secure String System.Security.SecureString

    Numeric Value 0

    Problem Description:
    As described by Matt over at StackOverflow - https://stackoverflow.com/questions/26238881/host-ui-prompt-is-ignoring-the-attribute-defaultvalue-in-fielddescription
    > $Host.UI.Prompt method accepts a collection of FieldDescription objects. each of those objects can be assigned with a DefaultValue attribute, which is supposed to be returned when no input is given by the user for this specific field.
    > I've got everything…

    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 Engine  ·  Flag idea as inappropriate…  ·  Admin →
  10. Add support for JSON-based help, as alternative option to MAML

    Votes from Connect: 15

    Original Date Submitted: 8/7/2015 12:24:30 AM

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


    Problem Description:
    Add support for JSON-based help, as alternative option to MAML

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

    Repro Steps:

    Internal BugId: 15717

    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 →
  11. limit-eventLog -logname parameter do not accept an array

    Votes from Connect: 3

    Original Date Submitted: 7/22/2015 3:24:55 PM

    Description:
    Contact Information
    Handle: 响叮咚
    Site Name: PowerShell
    Feedback ID: 1576035


    Frequency: PowerShell
    Regression: 【test】
    work:
    limit-eventLog -logname "SYSTEM" -MaximumSize 204800kb

    don't work:
    limit-eventLog -logname @("SYSTEM","Application","Security") -MaximumSize 204800kb
    limit-eventLog -logname "SYSTEM","Application","Security" -MaximumSize 204800kb
    limit-eventLog -logname SYSTEM,Application,Security -MaximumSize 204800kb

    Problem Description:
    limit-eventLog -logname do not accept an array

    【version】
    all version.
    from powershell 2.0 to powershell 5.0 in windows 10 preview 10159!

    【reason】
    manual say:
    -LogName<String[]>, but after I test, does not support string array,only string!

    【The reporter】
    前进三 (QQ No:120944419)
    in
    chinese powershell communication salon ---(QQ group No:183173532)

    Product Studio…

    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 →
  12. MSFT_RegistryResource.psm1

    Votes from Connect: 3

    Original Date Submitted: 7/22/2015 3:22:46 AM

    Description:
    Contact Information
    Handle: Alcaron
    Site Name: PowerShell
    Feedback ID: 1574517


    Frequency: Desired State Configuration (DSC)
    Regression: Set a registry key to the binary value of anything with a hex value that starts with 0, i.e.:
    ValueData = @("8232c580d332674f9cab5df8c206fcd8")

    That 06 towards the end there is what initially led me to track this down.

    Problem Description:
    Line: 926
    Is: $Data | % {$retString += [String]::Format("{0:x}", $_)}

    Should be: $Data | % {$retString += [String]::Format("{0:x2}", $_)}

    As it stands now any HEX value that starts with 0 has it's leading 0…

    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  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  13. Get-Member -MemberType should fine grain properties to setters and getters

    Votes from Connect: 3

    Original Date Submitted: 6/30/2015 2:43:45 AM

    Description:
    Contact Information
    Handle: Derp McDerp
    Site Name: PowerShell
    Feedback ID: 1487548


    Problem Description:
    Get-Member -MemberType allows:

    CodeProperty, Property, NoteProperty, ScriptProperty, Properties

    but it should be extended with:

    CodeSetter, Setter, NoteSetter, ScriptSetter, Setters
    CodeGetter, Getter, NoteGetter, ScriptGetter, Getters

    So we can get finer grained results.

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

    Repro Steps:

    Internal BugId: 15616

    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 →
  14. Error when deploying DSC Extension in Azure IaaS VM

    Votes from Connect: 6

    Original Date Submitted: 6/4/2015 6:00:09 AM

    Description:
    Contact Information
    Handle: AlexWeiss
    Site Name: PowerShell
    Feedback ID: 1397136


    Frequency: PowerShell
    Regression: Run a deployment of 10 VMs with a JSON on IaaS V2 using ARM REST API
    These 10 VMs must also have a DSC Extension resource deployed.

    Problem Description:
    Hi Team,

    Wanted to share an error that happens when deploying a VM in Azure using the DSC Extension and Azure Resource Manager.
    When the DSC extension try to install, it needs the WMF5 Preview Update but it receive the error below when installing multiple VM at…

    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 →
  15. Auto-generated help for CommonParameters should include InformationAction and InformationVariable

    Votes from Connect: 3

    Original Date Submitted: 5/27/2015 6:49:42 AM

    Description:
    Contact Information
    Handle: Joel 'Jaykul' Bennett
    Site Name: PowerShell
    Feedback ID: 1371582


    Frequency: PowerShell
    Regression: get-help Get-Help -Full | Out-String -stream | select-string "^\s+<CommonParameters>" -Context 0,5

    Problem Description:
    When you call Get-Help on a function right now the InformationAction and InformationVariable common parameters aren't mentioned:

    PARAMETERS

    &lt;CommonParameters&gt;
    
    This cmdlet supports the common parameters: Verbose, Debug,
    ErrorAction, ErrorVariable, WarningAction, WarningVariable,
    OutBuffer, PipelineVariable, and OutVariable. For more information, see
    about_CommonParameters (<a rel="nofollow noreferrer" href="http://go.microsoft.com/fwlink/?LinkID=113216)">http://go.microsoft.com/fwlink/?LinkID=113216)</a>.

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

    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 Engine  ·  Flag idea as inappropriate…  ·  Admin →
  16. Powershell needs to have a "recursionlevel" parameter for items like Get-Childitem

    Votes from Connect: 4

    Original Date Submitted: 5/20/2015 6:18:19 AM

    Description:
    Contact Information
    Handle: KevinBG
    Site Name: PowerShell
    Feedback ID: 1348542


    Problem Description:
    At times, I only want to recurse to a limited depth in my directory tree to perform an operation. Today, that requires a non-trivial bit of code to recurse, but only to a particular depth. The addition of a parameter would be helpful. There are likely other commands which could benefit from this.

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

    Repro Steps:

    Internal BugId: 14492

    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 →
  17. Get-ChildItem help has an incorrect SYNTAX section

    Votes from Connect: 5

    Original Date Submitted: 5/17/2015 11:02:21 PM

    Description:
    Contact Information
    Handle: quilx
    Site Name: PowerShell
    Feedback ID: 1341523


    Frequency: Documentation
    Regression:

    Problem Description:
    The help of the Get-ChildItem cmdlet is not correct. For example, according to the SYNTAX
    section the command:

    Get-ChildItem -Recurse .\MyProject -File
    

    is not correct.

    However:
    1) It works and it provides the correct result.
    2) Example 5 uses such an invalid command line syntax.

    I imagine that it is useless to point how time consuming/frustrating and ultimately disturbing
    this can be for such ultra-basic commands that are used and uncountable number of times.

    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  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  18. Add cmdlets for managing local users and groups

    Votes from Connect: 5

    Original Date Submitted: 5/15/2015 9:48:33 PM

    Description:
    Contact Information
    Handle: BobbyMilford
    Site Name: PowerShell
    Feedback ID: 1335533


    Problem Description:
    Add cmdlets to create, edit and delete local user accounts, including password resets. Add cmdlets to create, edit and delete local groups, especially the Administrators local group.

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

    Repro Steps:

    Internal BugId: 14469

    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 →
  19. PowerShell WMF 5 classes lacking

    Votes from Connect: 3

    Original Date Submitted: 5/6/2015 6:00:56 PM

    Description:
    Contact Information
    Handle: FaustoNascimento
    Site Name: PowerShell
    Feedback ID: 1307824


    Problem Description:
    PowerShell are a great introduction to PowerShell, but I feel that they are lacking in a few areas currently:


    • No $PSBoundParameters. With the inability to have fields (rather than properties) in PowerShell classes, and the fact that properties are always public (even with the keyword 'hidden' they can still be accessed externally to the class), it becomes impossible to determine whether a property has a value that is default because of PowerShell's coercion, or if a property…

    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 Engine  ·  Flag idea as inappropriate…  ·  Admin →
  20. Option to output a pipeline terminating error via a Write-Error switch parameter

    Votes from Connect: 3

    Original Date Submitted: 4/14/2015 6:32:46 PM

    Description:
    Contact Information
    Handle: Carl Sörqvist
    Site Name: PowerShell
    Feedback ID: 1247244


    Problem Description:
    There are three types of errors in Powershell:

    Non-terminating errors are generated by the Cmdlet.WriteError method in .NET (https://msdn.microsoft.com/en-us/library/system.management.automation.cmdlet.writeerror(v=vs.85).aspx) or by Write-Error/$PSCmdlet.WriteError() in Powershell, and lets both cmdlet/advanced function and script execution continue, unless $ErrorActionPreference is set to "Stop".

    Pipeline terminating errors are generated by the Cmdet.ThrowTerminatingError method in .NET (https://msdn.microsoft.com/en-us/library/system.management.automation.cmdlet.throwterminatingerror(v=vs.85).aspx) or by $PSCmdlet.ThrowTerminatingError() in Powershell, and stops the current pipeline from executing any further, but does not stop script execution unless…

    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 →
  • Don't see your idea?

Feedback and Knowledge Base