# 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.
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. ## Add-AppxPackage (Chef, WinRM) - Errors - Message: Contact Microsoft Customer Support Services

Sorry if this is the wrong place, I created an issue https://github.com/chef/chef/issues/7765 but I am not sure its an issue with Chef.
I have also created an issue https://github.com/PowerShell/PowerShell/issues/8148 .
I am not very familiar with Powershell sorry, so I am unable to replicate without Chef (If I knew how it would be handy to try and replicate with pure WinRM).

## Steps to reproduce

In Chef
powershell cd C:/Test Add-AppxPackage Example_1.0.0.0_x64.appx -DependencyPath &quot;Dependencies\\x64\\A.appx&quot;,&quot;Dependencies\\x64\\B.appx&quot;,&quot;Dependencies\\x64\\C.appx&quot; 
This is trying to install an appx for a standard user. I believe Chef uses WinRM to run the commands.

## Expected behavior

 App installs. Testing the command

(thinking…)
Signed in as (Sign out)

We’ll send you updates on this idea

2. ## No paid modules in the module repository

I recently posted this on TechNet, and was directed here...

I couldn't remember how many times I've heard Jeffrey Snover talk about the experience that the Powershell team are after being one where you can start at a PS prompt and find and finish everything you need.

First, great job, because it is actually shaping up to an environment that is just that. However, I just ran in to something that made me curse out loud alone in my office, and I want to believe that the majority of the community will be with me on this.

I started, as…

(thinking…)
Signed in as (Sign out)

We’ll send you updates on this idea

3. ## Running Stop-Website on windows 2016 server with powershell 5.1 and servermanagerworflows 3.0 is very slow (7 minutes)

Running Stop-Website on my windows 2016 DEV server with powershell 5.1 and servermanagerworflows 3.0 is very slow (7 minutes) but is super fast when doing it directly from IIS and on UAT server with same configuration. The command is executed locally on the machine (not remotely)

1 vote
(thinking…)
Signed in as (Sign out)

We’ll send you updates on this idea

4. ## Kill a specific IIS request

Sometimes there are single requests which are hanging in IIS.
It would be good to kill such a single request without killing the whole process because that can cause a lot of time until a big web application is running again.

1 vote
(thinking…)
Signed in as (Sign out)

We’ll send you updates on this idea

5. ## Broken or Incorrect Powershell on Windows 10

So I have Windows 10, in Windows optionalFeatures.exe Powershell is marked as version 2.0 in windows system32 is it version 1.0 and Windows Powershell HOST command says Version 5.1

Despite the above information, my Powershell does not know how to do any commands such as 'install-module' or 'PSVerstonTable'
I have a suspicion that my Powershell is somehow corrupted or the incorrect version that was manually installed previously.

I have turned Windows PowerShell 2.0 OFF in Windows Features but Powershell remains and I can open and access it.

I have looked for guides and help on how to do a clean…

1 vote
(thinking…)
Signed in as (Sign out)

We’ll send you updates on this idea

6. ## Add a -BreakawayFromJob parameter to the Start-Process cmdlet

When you create a process with Start-Process, it joins the same Windows Job as the PowerShell session. There are times when you want to create a process that is in a new Windows Job. The CreateProcess API has a CREATEBREAKAWAYFROM_JOB process creation flag which does this.

Please add a -BreakawayFromJob switch parameter to Start-Process which can be used to set this process creation flag.

1 vote
(thinking…)
Signed in as (Sign out)

We’ll send you updates on this idea

7. ## PS 5.1 Bug: Restart-Computer hangs PowerShell after completion when passing large array of ComputerNames

when I call:
Restart-Computer -ComputerName $lotsOfComputers -Force where:$lotsOfComputers is 20-150 other computers on the LAN in our AD environment

This is the sequence of events: First, the command completes quickly, the expected computers reboot, and no errors are displayed. I can then type in the console exactly 1 new line of input and hit enter, after which the PowerShell console hangs for a long period of time (several minutes), possibly in correlation to the size of the array of computers. Once it begins hanging it does not register any new keyboard input onscreen during the hang (but it does…

1 vote
(thinking…)
Signed in as (Sign out)

We’ll send you updates on this idea

8. ## CircuitPowerShell

Microsoft should make CircuitPowerShell to further enable IoT like there is CircuitPython.

1 vote
(thinking…)
Signed in as (Sign out)

We’ll send you updates on this idea

9. ## Unable to use PowerShell Transcription with Active Directory Administrative Console (ADAC)

Setup group policy to enable PowerShell Transcripting. From a machine that has that policy applied, launch ADAC. The error "Cannot connect to any domain. Refresh or try again when connection is available." pops up and ADAC can't be used.

https://github.com/PowerShell/PowerShell/issues/3021

(thinking…)
Signed in as (Sign out)

We’ll send you updates on this idea

10. ## OpenSource NetTCPIP and put it in a GitHub repo.

I am extremely annoyed by Test-NetConnection and would like to make it better. Why is there not a skip ICMP flag, or a timeout flag?

Please, OpenSource this so the community could improve this tooling for all.

(thinking…)
Signed in as (Sign out)

We’ll send you updates on this idea

11. ## utf-8 without bom

Bug: Scripts encoded with utf-8 without bom are producing errors when the character "Ä" is used between double quotation marks.

Frequency: always

How to reproduce: Create a powershell file with the following contents:

$test = "Ä" Save it with the encoding "utf-8 without bom" (often just called utf-8. The counterpart, utf-8 with bom, can also be called "utf-8 signature"). Run the file, and you will get the following error: At C:\location\to\file\test.ps1:1 char:9 +$test = "Ã„"
+ ~~~~
The string is missing the terminator: ".

+ CategoryInfo          : ParserError: (:) [], ParseException
+ FullyQualifiedErrorId : TerminatorExpectedAtEndOfString


(thinking…)
Signed in as (Sign out)

We’ll send you updates on this idea

12. ## Bug? Test-Connection forces enumeration of reparse points

I've noticed some behavior in PowerShell that I can't explain, but I'm hoping that someone else can.

If I want to build a list of file objects from drive C:\, and I want to ignore shortcut folders (reparse points) such as C:\Documents and Settings. The following command works well:

$FileList = @(Get-ChildItem -Path C:\ -Recurse -Force -Attributes !ReparsePoint);$FileList | Where-Object {$_.DirectoryName -like "Documents and Settings"}; The Where-Object command returns no files as expected, since C:\Documents and Settings\ is a reparse point. However, if I run the Test-Connection command first, then the Get-ChildItem command appears to ignore the… 3 votes Sign in (thinking…) Sign in with: Facebook Google Signed in as (Sign out) We’ll send you updates on this idea 13. ## SendMail needs ReplyTo parameter This is a standard SMTP option and glaring oversite in PowerShell. 2 votes Sign in (thinking…) Sign in with: Facebook Google Signed in as (Sign out) We’ll send you updates on this idea 14. ## Include function to show bytes human readable like linux. In Linux in many commands like "ls", "df", and other have an option to show bytes sizes in human readable formats (bytes, KB, MB, GB, TB, etc). In powershell is necessary to create a function to do this. Would be interesting create some function to powershell convert the bytes value in the human readable value. 3 votes Sign in (thinking…) Sign in with: Facebook Google Signed in as (Sign out) We’ll send you updates on this idea 15. ## PowerShell Classes should allow properties with get and set PowerShell classes should more closely mirror the abilities of a C# class imported and allow full differentiation between fields and properties. Properties should allow getter and setter code blocks 6 votes Sign in (thinking…) Sign in with: Facebook Google Signed in as (Sign out) We’ll send you updates on this idea 16. ## Get-Credential does not support Smart Card user name hints If you utilize Smart Cards with certificates that are not directly linked to users (no suitable user DN in Subject and no UPNs in SANs), you are able to link a single certificate to multiple accounts dynamically with the caveat that users need to provide explicit user name hints during logon in order to log on. User name hints need to be enabled via GPO or registry settings ("X509HintsNeeded"), after which all standard credential dialogs in Windows support them, except PowerShell's Get-Credential. This effectively prevents using PowerShell remoting with such Smart Cards / certificates if different credentials are required. In… 8 votes Sign in (thinking…) Sign in with: Facebook Google Signed in as (Sign out) We’ll send you updates on this idea 17. ## [Bug] Windows Management Framework 5.1, ExecutionPolicy set via "User Configuration" (Group Policy) does NOT apply to the "UserPolicy" scope [Bug] On Windows Management Framework 5.1, ExecutionPolicy set via "User Configuration" (Group Policy) does NOT apply to the "UserPolicy" scope (defaults to "Undefined") on OSs other than Windows 10 and Windows Server 2016 Affected operating systems: Windows Server 2012 (confirmed) Windows Server 2008 R2 (confirmed) Windows 8.1 (unconfirmed) Windows 8 (unconfirmed) Windows 7 SP1 (confirmed) Explanation: I want to set ONLY the UserPolicy ExecutionPolicy scope to be "Restricted" and leave the MachinePolicy ExecutionPolicy scope as "Undefined" so that it isn't overriding the UserPolicy scope. This will allow the "Builtin\System" \ "NT Authority\System" \ "%ComputerName%$" account to run scripts but NOT…

(thinking…)
Signed in as (Sign out)

We’ll send you updates on this idea

18. ## Need a PowerShell version of tpmvscmgr.exe to manage TPM smart cards

We need a PowerShell version of tpmvscmgr.exe to manage TPM virtual smart cards.

The tpmvscmgr.exe tool 1) does not accept PIN, PUK and AdminKey numbers as arguments, these must be entered interactively in powershell.exe only, not ISE or with a pop-up, 2) cannot list currently existing virtual smart card ID strings, and 3) is somewhat crude in how it manages card lockout policies and unlocks.

This is needed not just for Windows clients, but also because Server 2016 Hyper-V supports virtual smart cards for guest VMs, such as for VDI scenarios.

We need to be able to pass in PIN,…

(thinking…)
Signed in as (Sign out)

We’ll send you updates on this idea

19. ## Package PowerShell Classes in a Module

Object Oriented Programming seems to be supported now in PowerShell, but custom classes defined in modules don't seem to behave the way they should.

There only seem to be two consistent ways to make these work when importing a module that has classes defined:
1. Import the module, then run "using module ..." to make the classes available in the session. Alternatively, you can import the module with the using statement, but this isn't ideal (no versioning).
2. Add the class definition file(s) to the ScriptsToProcess attribute of the module. This isn't ideal either as it runs the scripts in…

(thinking…)
Signed in as (Sign out)

We’ll send you updates on this idea

20. ## Copy headers when copying from Out-GridView

It would be great to copy headers for all the columns when copying data from the Out-GridView table lists.