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. Import-Module "less discoverable" warning should suggest using Get-Command

    Votes from Connect: 5

    Original Date Submitted: 8/8/2014 12:33:28 AM

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

    Frequency: Always Happens
    Regression: Yes, this happens in previous released versions

    Problem Description:
    When importing a module with a lot of verbose logging or hundreds of commands, it's a pain to use Import-Module -Verbose as a way of detecting the less discoverable commands. This is especially the case since there are no verbose warnings for commands without verbs (see https://connect.microsoft.com/PowerShell/feedbackdetail/view/940569).

    I think that instead of suggesting Import-Module 'ModuleName' -Verbose ... you should suggest:

    Get-Command -Module…

    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 →
  2. PowerShell 4.0 help has to be updated with update-help before any help content is available

    Votes from Connect: 4

    Original Date Submitted: 7/25/2014 2:11:19 AM

    Description:
    ********Contact Information********
    Handle: b_mil
    Site Name: PowerShell
    Feedback ID: 928181
    ***************************************

    Frequency: Always Happens
    Regression: No, this is new to the most recent version

    Problem Description:
    PowerShell currently ships with no help content built in. Although it can be updated, it is still a regression to not have at least some help files available from the default install. Not all environments and hosts have internet connectivity to retrieve help content online. Not all environments have firewall and security configurations that make it practical to update the help content on…

    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 →
  3. Make F8 work for selected text in the ISE command prompt

    Votes from Connect: 5

    Original Date Submitted: 6/30/2014 2:10:42 PM

    Description:
    ********Contact Information********
    Handle: Jeff Wouters
    Site Name: PowerShell
    Feedback ID: 909738
    ***************************************

    Frequency: Sometimes Happens
    Regression: Yes, this happens in all previous versions

    Problem Description:
    When selecting text in the ISE script pane, you can press F8 to execute only what has been selected.
    My request is to make it possible when you select text in the command window, F8 should also be possible for that selection.
    Not a critical thing, but it would save me some copy-pasting.

    Product Studio item created by Connect Synchronizer due to creation of…

    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 →
  4. Add a .version to comment-based help, that can also be called from script

    Votes from Connect: 14

    Original Date Submitted: 3/27/2014 6:05:55 AM

    Description:
    ********Contact Information********
    Handle: are bee en zed
    Site Name: PowerShell
    Feedback ID: 841437
    ***************************************

    Frequency: Always Happens
    Regression: Yes, this happens in all previous versions

    Problem Description:
    I'd love to be have a .version added through comment based help on scripts and functions. This would be especially valuable if it was visible from within the script or function itself as well, perhaps as a member of $MyInvocation or $PSCmdLet.

    e.g.
    # .Version 1.0.12 (March 26, 2014)

    ...

    {
    write-host "This is the FooBar script version $($MyInvocation.Version)!"
    }

    output on…

    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 →
  5. Tab completing paths containing variables or environment variables should not replace those variables

    Votes from Connect: 19

    Original Date Submitted: 7/16/2013 9:20:31 PM

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

    Frequency: Always Happens
    Regression: Yes, this happens in all previous versions

    Problem Description:
    If you reference a variable or an environment variable in a path and press tab, tab completion expands (replaces) the variable/environment variable with the actual value of that variable. In a scripting environment, this is anti-best scripting practices. Instead it should allow for tab completion while leaving the variable as a variable. Here are a few examples:

    Type:
    $PSHome\

    Then press <TAB>. $PSHome is…

    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 →
  6. Weekly tasks created via PowerShell using a different user immediately fail with error 0x41306

    Votes from Connect: 11

    Original Date Submitted: 1/18/2013 12:23:14 AM

    Description:
    ********Contact Information********
    Handle: DanTup
    Site Name: PowerShell
    Feedback ID: 776801
    ***************************************

    Frequency: Always Happens
    Regression: I don't know if this issue existed previously

    Problem Description:
    I've posted full details and a sample on StackOverflow here:

    http://stackoverflow.com/q/14378951/25124

    We're using PowerShell to create some scheduled jobs, but those that are set to be weekly instead of daily (using New-JobTrigger) always immediately fail with an exist code of 0x41306 when we try to execute them from the Task Scheduler UI. (However they seem to work in PowerShell if we use (Get-ScheduledJob x).Run()

    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 →
  7. PowerShell ISE v3 RTM: Intellisense does not show up consistently

    Votes from Connect: 34

    Original Date Submitted: 11/29/2012 11:18:12 PM

    Description:

    ********Contact Information********
    Handle: Trevor Sullivan
    Site Name: PowerShell
    Feedback ID: 772736
    ***************************************

    Frequency: Always Happens
    Regression: I don't know if this issue existed previously

    Problem Description:
    Intellisense does not consistently show up for all possible options. Consider the following scenario:

    You add the System.Speech assembly, and then want to reference a type in the System.Speech namespace. You might type the following code

    Add-Type -AssemblyName System.Speech; # Hit F8 to run this in ISE
    # Now type this next line out, and note how the System.Speech namespace is not
    #…

    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 →
  8. Tee-Object to support -Encoding parameter like other cmdlets (such as Add-Content)

    Votes from Connect: 11

    Original Date Submitted: 9/2/2012 11:59:59 AM

    Description:
    ********Contact Information********
    Handle: Chris Woo
    Site Name: PowerShell
    Feedback ID: 760831
    ***************************************

    Frequency: Always Happens
    Regression: Yes, this happens in all previous versions

    Problem Description:
    It would be great if Tee-Object cmdlet can support -Encoding parameter like other cmdlets (such as Add-Content)

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

    Repro Steps:
    Expected Results:

    Internal BugId: 3778

    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 →
  9. PS3CTP1: Invoke-RestMethod fails to return the entire output

    Votes from Connect: 20

    Original Date Submitted: 9/30/2011 1:14:25 AM

    Description:

    ********Contact Information********
    Handle: Joel -Jaykul- Bennett
    Site Name: PowerShell
    Feedback ID: 691723
    ***************************************

    Frequency: Always Happens
    Regression: No, this is new to the most recent version

    Problem Description:
    When using Invoke-RestMethod on an OData feed, it does not return collection-level data (it returns only the entry objects).

    This means that we don't get the feed title, id, or last "updated" time, but it also means we miss out on the two new pieces of collection-level metadata that were added in OData v2: the entry count, and the "next links"…

    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 →
  10. New Get-Content parameter for XML content support

    Votes from Connect: 19

    Original Date Submitted: 12/19/2010 9:54:31 PM

    Description:
    ********Contact Information********
    Handle: Shay Levi
    Site Name: PowerShell
    Feedback ID: 632433
    ***************************************

    Frequency: Always Happens
    Regression: Yes, this happens in all previous versions

    Problem Description:
    To load an XML file we usually do the following:

    $xml = [xml](Get-Content -Path .\file.xml)

    To make it easier and type less I suggest to add a new parameter:

    $xml = Get-Content -Path .\file.xml -AsXml

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

    Repro Steps:
    Expected Results:

    Internal BugId: 2772

    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  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  11. Get-Service cmdlets needs a Credential parameter

    Votes from Connect: 29

    Original Date Submitted: 6/13/2010 6:12:31 AM

    Description:
    ********Contact Information********
    Handle: hrottenberg
    Site Name: PowerShell
    Feedback ID: 567007
    ***************************************

    Frequency: Always Happens
    Regression: Yes, this happens in all previous versions

    Problem Description:
    The Get-Service cmdlet has a Computername parameter in v2, but without support for supplying credentials, this is of limited use in non-domain or cross-domain scenarios. Please add a Credentials parameter that works similarly to the one on Get-WMIObject.

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

    Repro Steps:
    Expected Results:
    Get-Service should be able to work…

    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 →
  12. Set-Acl cannot change filesystem/registry ACL if current user or one of his group hasn't TakeOwnership permission

    Votes from Connect: 20

    Original Date Submitted: 2/27/2009 5:16:35 PM

    Description:
    ********Contact Information********
    Handle: Itanium2
    Site Name: PowerShell
    Feedback ID: 418906
    ***************************************

    Frequency: Always Happens
    Regression: Yes, this happens in previous released versions

    Problem Description:
    For example, we have a folder and Administrator or Administrators group is object owner and doesn't have explicit (or inherited from parent) ACE with TakeOwnership right. Running code (see reprodiction steps) we get an error.

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

    Repro Steps:
    here is code that adds Everyone group to existing ACL:
    $acl…

    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  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  13. ForEach collection method does not honor strict mode

    $a=$null,@{a=0}
    $sb={"Object from pipeline is$(if($null-ne$_){' not'}) null."}
    Set-StrictMode -Off
    $a|% b|% $sb
    $a.ForEach('b')|% $sb
    Set-StrictMode -Version Latest
    $a|% b|% $sb
    $a.ForEach('b')|% $sb

    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 →
  14. IArgumentCompleter class cannot be dot sourced

    IArgumentCompleter class cannot be dot sourced.

    class Comp: IArgumentCompleter
    {
    [System.Collections.Generic.IEnumerable[CompletionResult]]
    CompleteArgument(
    [string]$commandName,
    [string]$parameterName,
    [string]$wordToComplete,
    [Language.CommandAst]$commandAst,
    [System.Collections.IDictionary] $fakeBoundParameter)
    {
    $list = [System.Collections.Generic.List[CompletionResult]]::new()
    foreach($c in ('aaaa', 'bbbb')){
    if($c.StartsWith($wordToComplete, [StringComparison]::OrdinalIgnoreCase)){
    $list.Add([CompletionResult]::new($c,$c,[CompletionResultType]::ParameterValue, $c))
    }
    }
    return $list
    }
    }

    function Test-Comp
    {
    param(
    [ArgumentCompleter([Comp])]
    [string] $Path
    )
    }

    Works if the class is in the same file as the function, but not if the class is dot-sourced from another file.

    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 →
  15. BUG: No coercion operator is defined between types 'System.String' and 'System.Char'

    After upgrading WMF to 5.0 RTM on windows 7 64 bit, with office 2013 32 bit.

    I get the following in my mail signature script:
    No coercion operator is defined between types 'System.String' and 'System.Char'.

    the powershell line:
    $objSelection.TypeText([char]13)

    this worked fine before: workaround is to use this instead:
    $objSelection.TypeText(([char]13).tostring())

    psversiontable:
    Name Value
    ---- -----
    PSVersion 5.0.10586.51
    PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
    BuildVersion 10.0.10586.51
    CLRVersion 4.0.30319.42000
    WSManStackVersion 3.0
    PSRemotingProtocolVersion 2.3
    SerializationVersion 1.1.0.1

    .Net is version 4.6.01055 (4.6.1)

    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. BUG : WMI does not return correct value from a remote session

    BUG : WMI does not return correct value from a remote session

    Querying SCCM from WMI works localy but not from within a remote session.

    when running this locally on the sccm server it works as expected :

    get-wmiobject -NameSpace "ROOT\SMS\site_CT1" -class SMS_ImagePackage

    but nothing is returned from a pssession
    etsn SCCM-SERVER
    [SCCM-SERVER]PS> get-wmiobject -NameSpace "ROOT\SMS\site_CT1" -class SMS_ImagePackage

    does not work also with invoke-command
    icm SCCM-SERVER -scriptblock{ get-wmiobject -NameSpace "ROOT\SMS\site_CT1" -class SMS_ImagePackage }

    From remote session I can list the class but can't find any method or property :

    icm sccm-server -scriptblock {get-wmiobject -NameSpace "root\sms\site_ct1" -List "sms_Imagepackage"

    NameSpace : ROOT\sms\site_CT1

    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 →
  17. Export-Csv - not quite right error message

    This command

    1 | Export-Csv

    gets an error

    > Export-Csv : You must specify either the -Path or -LiteralPath parameters, but not both.

    The command specifies none of the -Path or -LiteralPath, not both, as the message claims.

    PowerShell 5.0

    0 votes
    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 →
  18. 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 →
  19. 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…

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

Feedback and Knowledge Base