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. FeatureRequest: Have New-PSdrive store credentials in Credential Manager when Persist and Credential options used

    Currently there is no built in or easy way to have credentials stored to map persistent Drives via a script.

    If you are mapping a drive for the same domain that the system is on then it will pass-through the current user's credentials, and it will save alternate credentials for the mapping in the current user session. However if you are trying to map a persistent drive for a share from a different non-federated domain, a workgroup computer, or for something on the same domain using different credentials, the password is not saved through logouts or reboots. Not only is…

    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 →
  2. Bug:New-PSDrive altering stored username in registry persistence entry when using credential object from different domain in UPN format

    Steps to reproduce

    Must use the format username@domain for username and be mapping share from different non-federated domain to reproduce

    $Cred = Get-Credential
    $Path = 'Path to the share'
    New-PSDrive -Name 'P' -PSProvider FileSystem -Root $Path -Persist -Credential $Cred -Scope Global

    Expected behavior

    The $Cred.username value gets stored in the registry under HKEYCURRENTUSER\Network\P
    in the UserName string value without alteration.

    Actual behavior

    The domain of the system running the commands gets appended in the front of the username from the cred object when stored in the reg key.

    For example if $Cred.Username is 'username@Domain1.com' and the…

    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 →
  3. BUG: Powershell .net class loads slow since MS-Security Update April 2019

    Since May 2019 Security Rollup for Windows Server 2016, access to .net object via powershell is very slow, when a powershell variable breakpoint is set in the powershell.

    For example loading speed of [System.Environment] takes over ten times with breakpoint set against no breakpoint set.

    Since the behavior only occurs with latest security updates installed (May 2019 (KB4494440) or June 2019 (KB4503267)) i think it is related to the update.

    Did some troubleshooting with procmon until now. For me it looks like when PSBreakpoint is set, there are multiple reads from HKLM\System\CurrentControlSet\Control\Session Manager\Environment__PSLockdownPolicy can't repoduce this when there is no…

    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 →
  4. 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 →
  5. Bug: New-VirtualDiskClone not working

    The example is not working:
    New-VirtualDiskClone -VirtualDiskFriendlyName archive -FriendlyName archive2019 -TargetStoragePoolName "sof-pool"
    will return the following error: A parameter cannot be found that matches parameter name 'TargetVirtualDiskName'

    If there is any update or error I made please join the conversation an:
    https://social.technet.microsoft.com/Forums/windows/en-US/8de02e3f-41d0-42bc-b72d-9f1a785160c3/newvirtualdiskclone-not-working?forum=winserverpowershell

    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 →
  6. 'Get-Help about_Functions_Advanced_Parameters' documentation is incorrect

    The information that's shown on 'Get-Help aboutFunctionsAdvanced_Parameters' under 'ValidatePattern' is incorrect. It tells us that the "[0-9][0-9][0-9][0-9]" pattern means the parameter value must be a four-digit number, but it should say the parameter value must INCLUDE a four-digit number, as the pattern isn't starting with '^' and ending with '$'.

    So, for example, '12345 -match "[0-9][0-9][0-9][0-9]"' is true, but '12345' obviously isn't a four-digit but a five-digit number.

    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 →
  7. 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 →
  8. New-NetIPAddress Prefixlength not working

    New-NetIpaddress in windows 10 1903 ent will not accept 27 as a prefix length

    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 →
  9. get-childitem doesn't easily pipe full path to foreach_object

    This is already changed in PS 6. I think it would be very useful in PS 5.1. The string version of what get-childitem returns doesn't have the full path. I know $_.fullname would work, but it's more trouble. A lot of people ask about this.

    PS C:\users> get-childitem myuser\foo\ | foreach-object { get-content $ }
    get-content : Cannot find path 'C:\users\hi.txt' because it does not exist.
    At line:1 char:47
    + get-childitem myuser\foo | foreach-object { get-content $
    }
    + ~~~~~~~~~~~~~~

    + CategoryInfo          : ObjectNotFound: (C:\users\hi.txt:String) [Get-Content], ItemNotFoundException
    
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetContentCommand

    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 →
  10. very ****** about something which worked correctly. very complicae ******

    very about something which worked correctly. very complicae SMB

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  11. 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 →
  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. BUG: Add-DnsServerConditionalForwarderZone fails when using a private IP Address for MasterServers parameter

    BUG: Add-DnsServerConditionalForwarderZone fails when using a private IP Address for MasterServers parameter

    The MasterServers parameter should accept any valid IP address, regardless if it's public or private.

    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  ·  Other PowerShell  ·  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. LDAP broken when using Add-ADGroupMember with parameter MemberTimeToLive

    Hi,
    I've wanted to introduce TTL in AD group membership. I've managed to add me to group and after TTL has finished I've been removed. Checked in GUI, via get-adgroup -Identity '***' -ShowMemberTimeToLive -Properties member | select -expand member .
    But when I tried checking with $userGroups = Get-ADGroup -LDAPFilter ("(member:1.2.840.113556.1.4.1941:={0})" -f $adUser.DistinguishedName) or Get-ADUser -Filter "memberOf -RecursiveMatch '$($adGroup.DistinguishedName)'" -SearchBase $($adUser.DistinguishedName) I've got information that I'm still a member of group. Is it bug in LDAP or is there some kind of parameter which is kept?

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  16. Clear-Disk is failing without error.

    Clear-Disk is not un-initialising a disk, I go to run the initialize-disk command immediately after and get the error that the disk is already initialized. How do I solve this?

    3 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 →
  17. 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 →
  18. shortcut

    Can ise support change keyboard shortcut?
    The intellisense key 'ctrl + space ' is conflict with my input method, which language is not english.

    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  ·  ISE and tooling  ·  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. Invoke-Command does not respect -ErrorAction parameter

    Hey guys, this does not seem to be fixed. Is this by design? Invoke-Command does not respect -ErrorAction parameter which means it cannot be suppressed using SilentlyContinue nor can it be trapped using a Try..Catch block.

    This issue is present in both WinPS and PowerShell Core. Does not seem like intended behavior since the $Error[0] variable and $ResolutionError ErrorVariable are set by PowerShell outside of the scriptblock.

    Invoke-Command -ScriptBlock { Get-Content c:\file\does\not\exist.txt } -ErrorAction SilentlyContinue -ErrorVariable ResolutionError

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

Feedback and Knowledge Base