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: new-localuser fails to allow connection to Microsoft account

    The New-LocalUser cmdlet available in Windows 10 Anniversary Update cannot perform a function described in the documentation.

    Local user accounts may be connected with existing Microsoft accounts. New-LocalUser should support this by accepting a -Name parameter of the form "MicrosoftAccount<user>@outlook.com". This is described in the detailed help.

    However this fails because the parameter fails validation as it is over 20 characters in length (already true with "MicrosoftAccount" and "@outlook.com" let alone the "actual" user name). The 20 character limit is valid for a regular local account name, but shouldn't be valid for an MS account name.

    There appears no other…

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

    We’ll send you updates on this idea

    survey  ·  3 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  2. Invoke-RestMethod and Invoke-WebRequest Encoding bug

    Invoke-RestMethod and Invoke-WebRequest Encoding bug

    This is 4 years old bug,from Invoke-RestMethod and Invoke-WebRequest was born.

    【Cause of the bug】
    Utf8 web page incorrectly identified as iso8859-1.
    Mistakenly convert THE! utf8("false ISO-8859-1") source string to utf8.
    There may be more encoding incorrectly identified,encoding incorrectly conversion errors.

    【bug with powershell version】
    all version
    powershell 5.0 with windows10 10586 :yes tested.

    【test code】
    Invoke-WebRequest -Uri 'http://www.msn.com' # return chinese messy code
    (Invoke-WebRequest -Uri 'http://www.msn.com').BaseResponse.CharacterSet # utf8 web page,but return ISO-8859-1

    Invoke-RestMethod -Uri 'http://www.msn.com'

    【how to fix】
    convert string encoding.
    from utf8 to THE! "false ISO-8859-1"

    $utf8 =…

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

    We’ll send you updates on this idea

    4 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  3. Change the default for Windows System's Culture, DateFormat & Local settings.

    At present the Regional & Localisation Powershell commands are per user &/or session based.

    There does not appear to be a way to change the default Regional settings for all users. eg: Default user, System User &/or the setting for the entire windows system. (ie All System accounts, all existing accounts & any new ones etc)

    I'd like an option on the existing powershell commands to force a system wide change for default accounts & possibly for all existing accounts.

    The goal is to change the DateFormat, Culture & Location to something else. In our case DMY & Australia

    Background: …

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

    We’ll send you updates on this idea

    2 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  4. Add option for New-WebServiceProxy to use existing assembly

    New-WebServiceProxy dynamically generates a new assembly with the types for a web service and adds it to the AppDomain every time it's called, even for the same URI with the same credentials.

    Please add a parameter to New-WebServiceProxy that will allow it to use an existing assembly if possible. Even if the caller had to specify the assembly, that would be helpful.

    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  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  5. -IgnoreCertificateCheck or -SkipSslVerification parameter for [Invoke-WebRequest & Invoke-RestMethod]

    Invoke-WebRequest & Invoke-RestMethod need a parameter to easily skip/ignore checking for a valid certificate of https uri's. This could be required for a number of reasons such as development site only using self signed certificate while testing.

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

    We’ll send you updates on this idea

    survey  ·  1 comment  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  6. Set-Service -StartupType 'Automatic (Delayed Start)'

    Can we get this missing option added?
    It would be also nice if this was shown with Get-Service rather than services only showing Automatic when they are actually 'Automatic Delayed Start'.

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

    We’ll send you updates on this idea

    2 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  7. BUG: ScheduledTaskTrigger -RandomDelay does not work

    New-ScheduledTaskTrigger -AtLogOn -RandomDelay 0:15:00; or
    New-ScheduledTaskTrigger -AtLogOn -RandomDelay (new-Timespan -Minutes 15)
    does not set the delay option. The checkbox in ScheduledTask Panel never gets set.
    Windows 10.0.14393 x64 de-DE (German Installation)

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

    We’ll send you updates on this idea

    survey  ·  2 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  8. The -ToSession parameter for copy-item should accept multiple sessions

    The Copy-Item cmdlet now supports copying to a remote session. I typically work against a farm of servers and do something like
    $s = new-pssession server1, server2, server3.
    I want to be able to do copy c:\file.txt -tosession $s -destination c:\file.txt.

    Right now, I get an error saying cannot convert an array of objects to a System.Management.Automation.Runspaces.PSSession object. I had to copy the file 3 different times to each session.

    23 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 →

    Thank you for your input. Based on its current ranking compared to other feedback items and product schedule, work on this item is pending (and will be driven by) further customer input. If you did not open this issue and are also impacted by it, please vote this item up.

  9. Improve the speed of Get-EventLog

    As you describe here:
    https://blogs.technet.microsoft.com/heyscriptingguy/2011/03/08/how-to-improve-the-performance-of-a-powershell-event-log-query/
    The Get-EventLog command is slow. Using Get-WinEvent is much faster.The Get-EventLog is still easier to use though.
    Maybe Get-EventLog could be refactored to use Get-WinEvent

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

    We’ll send you updates on this idea

    survey  ·  1 comment  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  10. Bug: Copy-Item -ToSession does not copy the first folder and instead copies that folder's items to the top-level directory of the destinatio

    TLDR

    When copying files via the code below, if the first item copied is a folder it is not created in the destination. The files within that folder are instead copied to the top-level folder of the destination. All other files and folders copy normally.

    Code

    Copy-Item -ToSession $Session -Path C:\Some\Path* -Destination C:\Another\Path

    Result

    If there is a subfolder in C:\Some\Path called 'Folder' with files inside it called 'First.txt', 'Second.txt', and 'Third.txt', and if this is the first folder copied the destination will look like this:

    C:\Another\Path\First.txt
    C:\Another\Path\Second.txt
    C:\Another\Path\Third.txt
    ... Other Files and folders

    Executed on a Server 2012R2 with…

    4 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 →
  11. Test-Path does not support PSCredential

    Votes from Connect: 4

    Original Date Submitted: 8/12/2014 2:16:43 AM

    Description:
    Contact Information
    Handle: Graeme Bray
    Site Name: PowerShell
    Feedback ID: 943873


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

    Problem Description:
    Test-Path states that it supports a PSCredential, however it does not and errors when you attempt to pass a Credential object to it. This should either be removed or it should be changed to allow the passage of credentials.

    This can especially be an issue if there is no trust between domains/forest and you have to pass a credential in a script that…

    11 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 →
  12. SmbShare module localization does not work when UICulture is not en-US

    I am attempting to use invoke-command to run a script on a remote computer. The UICulture of my local machine is en-GB. During the execution of the script on the remote computer, it does an "Import-Module SmbShare". This fails with the following error:

    Cannot find the Windows PowerShell data file 'SmbLocalization.psd1' in directory 'C:\Windows\system32\WindowsPowerShell\v1.0\Modules\SmbShare\en-GB', or in any parent culture directories.

    Looking at the modules folder, I can see that the SmbShare folder does not contain an en-GB folder but does contain an en-US folder with an SmbLocalization.psd1 file inside. However, there is no default SmbLocalization.psd1 file located directly within the…

    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  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  13. Add -Ordered switch to ConvertFrom-StringData to enable creating ordered hashtables.

    Votes from Connect: 6

    Original Date Submitted: 8/19/2014 2:22:41 PM

    Description:
    Contact Information
    Handle: Bartosz Bielawski
    Site Name: PowerShell
    Feedback ID: 949805


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

    Problem Description:
    Currently we can easily create ordered hashtable using [ordered]@{} syntax. I would like to be able to do the same using ConvertFrom-StringData cmdlet, preferably using switch parameter -Ordered

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

    Repro Steps:

    Order kept...

    [ordered]@{

    one = 1
    
    two = 2
    three = 3

    }

    Ordered not kept, as expected...

    6 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 →
  14. PowerShell: Get-Service ComputerName parameter binding bug

    Please refer to the following examples. The ComputerName parameter (ValueFromPipelineByPropertyName) in combination with the "Name" or "DisplayName" parameters does not always scan the correct computers with the Get-Service cmdlet. Just in the first case, all target comptuers are queried. In the other cases, the first object is queried multiple times.

    $Objects = [PSCustomObject] @{ ComputerName = 'LON-DC1' }, [PSCustomObject] @{ ComputerName = 'LON-CL1' }

    SUCCESS: Works as expected, gets the service for each machine

    $Objects | Get-Service -Name Netlogon | Format-Table MachineName, ServiceName, Status -AutoSize

    MachineName ServiceName Status


    LON-DC1 Netlogon Running
    LON-CL1 Netlogon Running

    ERROR: Uses the first comptuer name

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

    We’ll send you updates on this idea

    2 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  15. New-JobTrigger why is there no -Monthly switch?

    Votes from Connect: 3

    Original Date Submitted: 7/24/2014 8:47:12 PM

    Description:
    Contact Information
    Handle: Lee Wilmott
    Site Name: PowerShell
    Feedback ID: 927973


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

    Problem Description:
    Please can you add a "-Monthly" switch (including a "DaysOfMonth" parameter) to the New-JobTrigger cmdlet?

    Many thanks,

    Lee

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

    Repro Steps:
    Expected Results:

    Internal BugId: 8911

    5 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 →
  16. psreadline module bug: cursor position error

    TITLE
    psreadline module bug: cursor position error

    【version】
    tested on powershell 5.0 in win10 1511 10586.104

    【reason】
    Cursor position error when chinese characters folder,or filename in console.
    see under test code.

    【reporter】
    By the chinese powershell research group. QQ group No. is 183173532

    【test code】
    PS F:\MP3\振奋> pwd <----- In any chinese characters folder,some block on 'pwd' left.

    Path

    F:\MP3\振奋

    PS F:\MP3\振奋> Remove-Module psreadline
    PS F:\MP3\振奋> pwd <----- Normal

    Path

    F:\MP3\振奋

    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  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  17. Get-FileHash only accepts single argument for -Algorithm parameter

    Votes from Connect: 3

    Original Date Submitted: 7/11/2014 10:53:05 PM

    Description:
    Contact Information
    Handle: Trevor Sullivan
    Site Name: PowerShell
    Feedback ID: 918243


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

    Problem Description:
    The Get-FileHash command only accepts a single argument for its Algorithm parameter. If you want to retrieve two different hashes, then the command must be called once for each hashing algorithm. Please enable multiple algorithms to be passed into the Get-FileHash command.

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

    Repro Steps:
    Run Get-FileHash…

    4 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 →
  18. ConvertFrom-StringData needs an -Ordered switch (to create an ordered hash table).

    Votes from Connect: 15

    Original Date Submitted: 10/21/2012 9:05:32 PM

    Description:
    Contact Information
    Handle: mjolinor
    Site Name: PowerShell
    Feedback ID: 768183


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

    Problem Description:
    ConvertFrom-StringData should have an -Ordered switch, to specify that you want to create an ordered hash table (to maintain the same order of elements as the string you're converting).

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

    Repro Steps:
    Expected Results:

    Internal BugId: 3895

    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 →
  19. List which module contains which CmdLets.

    I am trying to figure out which module contains Get-PcsvDevice. I am running PS 5.1 on Server2012 R2.

    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 →
  20. Case-Sensitive option for Test-Path

    An option to force Test-Path to be case-sensitive would be extremely helpful, especially given a script could be run on either a case-sensitive filesystem or a case-insensitive one and produce different output. At the moment, this requires a fair amount of manual work for a common goal. An option to force case-insensitivity may also be desitable, given PowerShell can encounter case-sensitive filesystems.

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

Feedback and Knowledge Base