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. Cmdlet "New-Mailbox" cannot use -encoding UTF-8

    While the UI for ExchangeOnline and Office365 can use UTF-8 when creating new resources, the Powershell cmdlet cannot.

    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 →
  2. Extraneous results returned with Resolve-DnsName (dnsclient)

    Quoted feedback from documentation feedback provided by MSFT team below. (via @jordanmills)

    > When resolving SRV records (example: Resolve-DnsName -Name "kerberos.tcp.dc._msdcs.$env:userdnsdomain" -Type SRV), the cmdlets also attempts to resolve any returned A or AAAA records and sends them to the pipeline as a separate object collection. This breaks pretty much any attempt to sort, group, filter, or otherwise process the data. How can we make it not return A and AAAA records for SRV queries?

    https://github.com/MicrosoftDocs/windows-powershell-docs/issues/302

    2 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 →
  3. 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 →
  4. new-azvm BUG

    Hey every body,

    "New-AzVM" has a strange behaviour (maybe a bug), if you pass vn and subnet as parameters and
    the vn exists but the subnet doesn't, it will try try to delete the vn (cascading) and recreate it. This
    will fail if you have other VMs in the vnet but will succeed if you have empty subnets deleting all of them (OUCH!).

    Steps to reproduce:


    1. login to portal and create 1 vnet (say vnProd2 ) and 2 subnets (say snProd, snDev)

    2. login to Azure from powershell (module AZ)

    3. run the following command:
      New-Azvm -Location "northeurope" -ResourceGroupName "rgTest" -virtualnetworkname vnProd2…
    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. "Test-NetConnection" add timeout

    please add timeout to "Test-NetConnection" see https://superuser.com/q/805621/216033

    8 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 →
  6. Get-AuthenticodeSignature does not return TimeStamperCertificate

    Hello, we've been using command Get-AuthenticodeSignature to validate a signed/time stamped file, and this works as expected in Server 2008 R2 and Server 2016 machines. But targeting the same file from Server 2012 R2 Powershell ISE, returns empty TimeStamperCertificate property. I've confirmed PS1, .NET framework and Authenticode module versions to be latest, and server patches are up to date. It seems that the root issue is within Microsoft.Powershell.Security library.

    Thanks

    Vlad

    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 →
  7. PowerShell DISM cmdlet GitHub Repository

    Does DISM cmdlets have a GitHub repository so I can add and extend WinPE-DismCmdlets-Package?

    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 →
  8. Windows PowerShell 5.1 code base (Win32/x64) suppository with changes, improvements, bug-fixes, NEW-Cmdlets, etc... merged back into itself?

    A Git(hub) place for Windows PowerShell 5.1 code base (Win32/x64) suppository with changes, improvements, bug-fixes, NEW-Cmdlets, etc... merged back into itself.

    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 →
  9. Add "-ComputerName" parameter to web administration and management cmdlets

    Please add the -ComputerName parameter to cmdlets such as Get-Service, Stop-Service, Get-ComputerInfo, Stop-WebAppPool, Start-WebAppPool, Stop-WebAppPool, Start-WebAppPool, Get-WebAppPoolState, etc... Running Invoke-Command with many arguments gets tedious at times and can be inefficient. Ideal, this should be standard in all cmdlets if possible.

    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 →
  10. New-Partition UseMaximumSize does not use all available space

    When creating a new partition with the parameter UseMaximumSize, the partition is created with 1031680 bytes less than reported by the SizeMax value from the Get-PartitionSupportedSize cmdlet.

    I tested this on Windows 2019 on ESX 6.7 and Azure.

    To reproduce (example with a 10GB disk):

    New-Partition -DiskNumber 2 -DriveLetter F -UseMaximumSize

    (Get-PartitionSupportedSize -DriveLetter F).SizeMax
    10720624128

    (Get-Partition -DriveLetter F).Size
    10719592448

    Resize-Partition -DriveLetter F -Size 10720624128
    Resize-Partition : Size Not Supported
    Extended information:
    The size of the extent is less than the minimum of 1MB.

    Possibly related issue in https://windowsserver.uservoice.com/forums/301869-powershell/suggestions/36967870-get-partitionsupportedsize-and-msft-partition-clas

    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 →
  11. 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 →
  12. Add-Printer very slow to return from remote print server queue creation

    Add-PrinterPort to a print server returns quickly. Add-Printer using that created port returns slowly (over a minute or two). SNMP turned off for the port. MMC shows print queue has been created successfully with all entered information. Powershell still sits without returning until over a minute later.

    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 →
  13. Windows server 2019 failoverclusters module vs 2008R2 Clusters

    we have found some issues using the failoverclusters module builtin Windows Server 2019 when using it against a 2008R2 cluster in the domain. For example, we get this error while trying to Pause a node on a 2008R2 cluster: from a Windows server 2019 box

    Suspend-ClusterNode -Cluster cluster1 -Name cluster1node1
    Suspend-ClusterNode : An error occurred pausing node 'cluster1node1'.

    The procedure number is out of range
    

    At line:1 char:1
    + Suspend-ClusterNode -Cluster cluster1 -Name cluster1node1
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    + CategoryInfo          : NotSpecified: (:) [Suspend-ClusterNode], ClusterCmdletException
    
    + FullyQualifiedErrorId : Suspend-

    ClusterNode,Microsoft.FailoverClusters.PowerShell.SuspendClusterNodeCommand

    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 →
  14. Reset-ComputerMachinePassword improvement

    Running this command requires domain privileges to reset the computer object password. In cases where the secure channel with a domain controller is already established, a local administrator of a domain computer should have the permission to trigger the password change.

    The following command achieves the desired result, albeit not in PowerShell: nltest /scchangepwd:[domain]

    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 →
  15. Fix bug in get-localuser

    On a W2016 DC:
    When I execute
    get-localUser -Name *$
    I get 65 Computer accounts

    But when I execute

    dsquery computer -name * -limit 0
    I get the correct 66 Computer accounts

    When I run
    get-localUser -Name MissingComputerAccount$

    I Get an Error
    So get-localUser can't handle all accounts

    So please fix this

    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 →
  16. Bug - Get-WsusComputer Cmdlet

    The optional parameter "-ComputerUpdateStatus" does not filter at all and instead returns all computers.

    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 →
  17. [BUG] Start-Process might not return Handle/ExitCode

    Issue:
    In order to obtain the Exit Code from a Process we are executing the Start-Process cmdlet with the following parameters:
    -PassThru -Wait -WindowStyle Hidden
    or
    -PassThru -Wait -NoNewWindow

    In rare cases, this leads to the following exception:
    System.Management.Automation.CmdletInvocationException: Cannot process request because the process (<ProcessIdHere>) has exited. ---> System.InvalidOperationException: Cannot process request because the process (<ProcessIdHere>) has exited.
    at System.Diagnostics.Process.GetProcessHandle(Int32 access, Boolean throwIfExited)
    at System.Diagnostics.Process.OpenProcessHandle(Int32 access)
    at System.Diagnostics.Process.get_Handle()

    After the Exception occurred, the returned Object does not contain a Handle nor Exit Code but the executable itself executed without issue.

    We also tried to remove the “-Wait” Parameter and…

    7 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. Convertto-JSON should be able to filter out empty properties of source object (to send to APIs)

    REST APIs (e.g. those from Business Central) may require a property of an object to be set when it is included in the JSON message. The API errors out when an unused property is present in the JSON object, even if it is not strictly required for the business logic you are implementing.

    When you build objects using PowerShell classes you tend to design the class so that all possible properties are defined in it. But they may not be used in each JSON/API message. Currently you have to filter these properties out before converting to JSON using ConvertTo-JSON. It…

    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 →
  19. intellisense for powershell windows

    i like to have intellisense, it means on powershell windows not ise

    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. Possible bug in DNS Module Get-DnsServerResourceRecord properties

    when I do:
    > Get-DnsServerResourceRecord -RRType Ptr -ZoneName 0.168.192.in-addr.arpa -ComputerName mydc1
    I get the following properties and corresponding data (output):
    HostName RecordType Timestamp TimeToLive RecordData


    14 PTR 4/6/2019 1:00:00 PM 00:20:00 someserver.contoso.com.

    but when I pipe to select-object in order to filter only certain properties, I am not getting the output that I expect which should correlate to the above output, for example:
    > Get-DnsServerResourceRecord -RRType Ptr -ZoneName 0.168.192.in-addr.arpa -ComputerName mydc1 | select -Property RecordData
    the output I see is:
    DnsServerResourceRecordPtr

    I just want a list of FQDN's..

    thank you,
    -Abbas

    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