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. Start-Transcript: poor error message on a bad -Path

    The following command

    Start-Transcript \zz*\z.log
    

    produces an error

    Start-Transcript : Transcription cannot be started.
    
    At C:\tmp\_160209_203322\test.ps1:2 char:1
    + Start-Transcript \zz*\z.log
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : InvalidOperation: (:) [Start-Transcript], PSInvalidOperationException
    + FullyQualifiedErrorId : CannotStartTranscription,Microsoft.PowerShell.Commands.StartTranscriptCommand

    The reason of the error is a bad -Path argument.
    It is difficult to get this from the error information.

    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 →
  2. v5: Potential issue with odd paths in `New-TemporaryFile`

    PowerShell v5 comes with a function New-TemporaryFile.

    Its code is shown by this command

    Get-Content function:New-TemporaryFile
    

    The essence of it is

    ...
    
    $tempFilePath = [System.IO.Path]::GetTempFileName()
    ...
    Get-Item $tempFilePath

    Get-Item uses the Path parameter, not LiteralPath. Thus, if
    $tempFilePath is an odd path (contains brackets) then Get-Item
    may fail to get the file.

    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 →
  3. 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 →
  4. $_ should be accessible without curly brackets with Where-Object

    Votes from Connect: 5

    Original Date Submitted: 10/30/2014 6:04:29 AM

    Description:
    Contact Information
    Handle: Peter M10
    Site Name: PowerShell
    Feedback ID: 1014939


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

    Problem Description:
    I would like to access the pipeline object with Where-Object without curly brackets like so:

    1..10 | Where-Object $_ % 2 -eq 1

    to get only uneven numbers.

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

    Repro Steps:
    1..10 | Where-Object $_ % 2 -eq 1

    Expected Results:
    Gives an "Cannot validate argument on parameter 'Property'."…

    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 →
  5. -Encoding should be [encoding] and not [string]

    Votes from Connect: 7

    Original Date Submitted: 10/15/2014 7:52:37 AM

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


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

    Problem Description:
    PowerShell should create an [encoding] type accelerator that accepts objects derived from [System.Text.Encoding] and also the following strings:

    String
    Unicode
    BigEndianUnicode
    UTF8
    UTF7
    UTF32
    Ascii
    Default
    Oem

    then all cmdlets which take -Encoding should be rewritten to use [encoding] instead.

    The Add-Content, Get-Content, and Set-Content cmdlets should take a [fsencoding] type that does the above but accepts the "Byte" string.

    Product Studio item created by…

    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 →
  6. Write-Error allows both Message and Exception parameters without an error saying the parameters are mutually exclusive

    Votes from Connect: 3

    Original Date Submitted: 8/22/2014 2:01:53 AM

    Description:
    Contact Information
    Handle: Aaron Jensen
    Site Name: PowerShell
    Feedback ID: 951925


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

    Problem Description:
    Write-Error isn't supposed to take both a message and an exception (see help Write-Error), but you can pass both without getting the "Parameter set cannot be resolved using the specified named parameters." error message.

    Also, when you use Write-Error in a catch block, and use both parameters, the original exception bubbles up instead of what gets written with Write-Error.

    Product Studio item…

    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 →
  7. 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…

    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 →
  8. 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

    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 →
  9. 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 →
  10. Powershell webadministration module commandlet new-WebApplication fails in double-hop

    in the WebAdministration module, the commandlet "new-WebApplication" fails if the physicalPath is a UNC location.

    AppCmd.exe and the .NET lib Microsoft.Web.Administration do not have this limitation.

    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 →
  11. Can't configure NetNatStaticMapping ExternalIPAddress other than 0.0.0.0

    Trying to configure Static mapping using an ExternalIPAddress other than 0.0.0.0
    Get us this message:
    "Add-NetNatStaticMapping : The process cannot access the file because it is being used by another process."
    Even though the IP address and port is mapped in "NetNatExternalAddress".

    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 →
  12. Get-VMProcessor doesn't show state of ExposeVirtualizationExtensions

    Set-VMProcessor -ExposeVirtualizationExtensions $true -VMName <VMNAME>

    Get-VMProcessor -VMName <VMNAME>

    This should show a column for ExposeVirtualizationExtensions but it doesn't

    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  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  13. convertto-json fails on result from Get-AzDiagnosticSetting

    The user reported an issue of Convertto-json cmdlet.
    Here is the details. Please take a loot at it.

    https://github.com/Azure/azure-powershell/issues/10216

    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  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  14. ActiveDirectory PowerShell module isn't thread-safe

    Accessing Active Directory Web Services (ADWS) by launching and running a number of PowerShell Runspaces in parallel from within the same process makes ADWS fail with error message "invalid enumeration context".

    Apparently, the ActiveDirectory PowerShell module is not thread-safe.

    Please fix soon. There is no workaround for this issue.

    See this repository for steps to reproduce:

    https://github.com/SetTrend/powershell-test

    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 →
  15. Honour -Confirm and -WhatIf on Remove-PrintJob Cmdlet

    -Confirm & -WhatIf Optional Parameters not honoured on Remove-PrintJob even though they are included in documentation.

    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 →
  16. Bug: Write-Output -InputObject (,'Test') -NoEnumerate

    The -NoEnumerate switch doesn't work when when the input is named using the -InputObject argument in PowerShell version 5.1.

    The following script returns False:

    Function Test {Write-Output -InputObject (,&#39;Test&#39;) -NoEnumerate}
    
    (Test) -is [Array]

    While this script returns True:

    Function Test {Write-Output (,&#39;Test&#39;) -NoEnumerate}
    
    (Test) -is [Array]

    $PSVersionTable

    Name Value


    PSVersion 5.1.17134.858
    PSEdition Desktop
    PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
    BuildVersion 10.0.17134.858
    CLRVersion 4.0.30319.42000
    WSManStackVersion 3.0
    PSRemotingProtocolVersion 2.3
    SerializationVersion 1.1.0.1

    This issue doesn't appear with PowerShell Core 6.2

    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 →
  17. ConvertFrom-String

    Make ConvertFrom-String available in PowerShell core as it's super useful when parsing txt files.

    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 →
  18. Creating a symbolic link requires administrator privilege

    Since some version of Windows 10, creating a symbolic link should not require administrator privilege. In cmd, using mklink to create a symbolic link without administrator privilege works, but New-Item in PowerShell doesn't work.

    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 →
  19. Make NetAdaper group accept -InterfaceIndex as well as -name

    With the "NetAdapter" group why do most of them not accept InterfaceIndex Number for selection? I would like to select my card by its Index so that even if its off / not active I can rename it, change its IP, powersettings etc. Lastly why can we not disable Netbios for the same cards this way?

    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 →
  20. test-dtc doesn't work on Windows 10 nor Windows Server 2016

    The test-dtc command tries to find some firewall rules that isn't present in either Windows 10 or Windows Server 2016 and will not complete it's testing because of this.

    In addition, it shouldn't test for firewall rules if firewall is disabled, since the firewall rules doesn't have any impact.

    The following firewall rules fails that they are disabled (but they don't exists):
    - RPC Endpoint Mapper
    - DTC incoming connections
    - DTC outgoing connections

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

Feedback and Knowledge Base