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.

Please feel free to provide feedback or file bugs here.

(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can support and comment on it.

If it doesn't exist, you can post your idea so others can support it.

Enter your idea and we'll search to see if someone has already suggested it.

  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. DynamicParam should recognize quoted string arguments (at least single quoted)

    Using PSVersion 5.1.14393.576

    Allowing quoted literals would be useful to allow argument values spaces.

    Function Show-DynamicParam {

    [CmdletBinding()]
    Param(
    [Parameter()]
    [string]
    $Test
    )

    DynamicParam {
    if ($Test -ine 'test') {
    throw "Does not work. Value was '$Test'"
    }

    $ParameterDictionary = New-Object System.Management.Automation.RuntimeDefinedParameterDictionary
    $Parameter = New-Object System.Management.Automation.RuntimeDefinedParameter('works', [switch], [System.Management.Automation.ParameterAttribute]::new())
    $ParameterDictionary.Add('works', $Parameter)
    return $ParameterDictionary
    }

    Process {

    }

    }

    # when using an argument literal the -works switch appears
    Show-DynamicParam -Test test -works

    # when using a string literal the value of $Test is 'test' WITH the quotes, see $Error[0]
    Show-DynamicParam -Test 'test' -

    1 vote
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)

      We’ll send you updates on this idea

      0 comments  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
    • WMF 5 - Invalid callee when using variant wrapper

      If I use the Runtime.InteropServices.VariantWrapper in WMF5 I get errors trying to interact with the system center orchestrator 2012 com object.. (x86)

      IE if I do this without WMF5:

      $oisMgr = new-object -com OpalisManagementService.OpalisManager
      $oHandle = New-Object Object
      $handle = New-Object Runtime.InteropServices.VariantWrapper($oHandle)
      $oisMgr.Connect($Username, $Credential.Password, [ref]$handle)

      It works fine, if I run with WMF5 I get an Invalid Callee Error.

      OS is windows 2012.. thinking about it as I write this, has the 'Object' type changed at all between the two?

      1 vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        I agree to the terms of service
        Signed in as (Sign out)

        We’ll send you updates on this idea

        0 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
      • Create symbolic link to a shadow copy using New-Item

        I'm able to make a symbolic link to a shadow copy using CMD mklink and kernel32.dll.CreateSymbolicLink
        But I'm not able to do this using PS>New-Item
        E.g.:
        New-Item -Path c:\temp\SL1 -ItemType SymbolicLink -Value \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy7\

        I get an error saying the path doesn't exist (that is the VSS path)

        1 vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          I agree to the terms of service
          Signed in as (Sign out)

          We’ll send you updates on this idea

          0 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
        • New-ADuser fails when the path contains brackets.

          If you have an OU name '1) Accounts' so the whole path is something like:
          OU=1) Accounts,OU=sitename,DC=companyname,DC=com
          New-ADUser -path will fail.
          A workaround is to create the user and then move them later using something like:
          Get-ADUser -Identity newuser | Move-ADObject -TargetPath OU=1) Accounts,OU=sitename,DC=companyname,DC=com

          1 vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            I agree to the terms of service
            Signed in as (Sign out)

            We’ll send you updates on this idea

            0 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
          • BUG: Set-Clipboard -AsHtml puts invalid CF_HTML on clipboard with non-ASCII text

            Repro with PowerShell 5.1.14986.1000:
            1) Set-Clipboard -AsHtml "abc"
            2) Paste into Word
            3) Text appears correctly as: abc
            4) Set-Clipboard -AsHtml "àbc"
            5) Paste into Word
            6) Text appears incorrectly as: ࢣ

            Appears CP 1251 text is being put in the CF_HTML, not UTF8.

            1 vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              I agree to the terms of service
              Signed in as (Sign out)

              We’ll send you updates on this idea

              1 comment  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
            • Start-DscConfiguration over secure WinRM (HTTPS / 5986) without needing to provide the Cim-Session

              referring to my post here. http://stackoverflow.com/questions/41567036/start-dsc-configuration-securely-usessl-without-needing-to-provide-the-compute

              Having the ability to continue using the ConfigurationData with multiple nodes and use a secure session (WinRM over 5986)

              1 vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                I agree to the terms of service
                Signed in as (Sign out)

                We’ll send you updates on this idea

                0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
              • BUG: PE Engine gets StackOverflowException if cmdlet Remove-Item encounters foldername = ALT+255

                If you try to delete a folder (not file) that is named with the invisible ALT+255 character, the PE engine will crash with StackOverflowException. This bug can temporarily be remedied by using cmd rmdir instead of Remove-Item -Recurse

                1 vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  I agree to the terms of service
                  Signed in as (Sign out)

                  We’ll send you updates on this idea

                  0 comments  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
                • Register-ArgumentCompleter Should Support Module-Qualified Command Names

                  Register-ArgumentCompleter does not appear to support module-qualified command names, such as:

                  Register-ArgumentCompleter -CommandName Microsoft.PowerShell.Management\Get-Process

                  Running this command does not return an error, but does not function either. Module-qualified command names are often considered a best practice so it would be helpful if this was supported. Thanks!

                  1 vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    I agree to the terms of service
                    Signed in as (Sign out)

                    We’ll send you updates on this idea

                    0 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
                  • "update-help -module powershellget" errs apparently because helpinfoURI is called with https rather than http

                    update-help : Failed to update Help for the module(s) :
                    'PowerShellGet'
                    The HelpInfoURI https://go.microsoft.com/fwlink/?LinkId=393271 does not start with HTTP.
                    At line:1 char:1
                    + update-help -module powershellget
                    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                    + CategoryInfo : NotSpecified: (HelpInfoUri:Uri) [Update-Help], Exception
                    + FullyQualifiedErrorId : InvalidHelpInfoUriFormat,Microsoft.PowerShell.Commands.UpdateHelpCommand

                    1 vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      I agree to the terms of service
                      Signed in as (Sign out)

                      We’ll send you updates on this idea

                      0 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
                    • Start-PcsvDevice is not up to current spec

                      PROBLEM:
                      I have been using the PcsvDevice commands to use IPMI out-of-band management to my servers. It works great for systems that are configured for legacy boot. But, the reboot does not work properly for systems that are requesting UEFI reboot. Here are the commands that work correctly for legacy booting:

                      Set-PcsvDeviceBootConfiguration -TargetAddress $ipAddr -Credential $creds -ManagementProtocol IPMI -OneTimeBootSource $device.StructuredBootString[0]
                      Start-PcsvDevice -TargetAddress $ipAddr -Credential $creds -ManagementProtocol IPMI

                      The purpose of the above commands is to force a LAN boot no matter what is configured as the first boot device on the targeted server. This is handy if I want to…

                      1 vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        I agree to the terms of service
                        Signed in as (Sign out)

                        We’ll send you updates on this idea

                        0 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
                      • Duplicate help files in PSWorkflow module break Get-Help

                        At some point in the 5.0 time period, Update-Help installed About topic files in the en-US directory for the PSWorkflow module with .txt (not .help.txt) file name extensions.

                        e.g. about_Foreach-Parallel.txt

                        Later, this was fixed and Update-Help installed the same help files in the same directory with the (correct) ".help.txt" file name extension.

                        e.g. about_Foreach-Parallel.help.txt

                        Now, the PSWorkflow\en-US directory has 9 pairs of files that are identical except for the file name extension.

                        about_ActivityCommonParameters.help.txt
                        about_ActivityCommonParameters.txt
                        about_Checkpoint-Workflow.help.txt
                        about_Checkpoint-Workflow.txt
                        about_Foreach-Parallel.help.txt
                        about_Foreach-Parallel.txt
                        about_InlineScript.help.txt
                        about_InlineScript.txt
                        about_Parallel.help.txt
                        about_Parallel.txt
                        about_Sequence.help.txt
                        about_Sequence.txt
                        about_Suspend-Workflow.help.txt
                        about_Suspend-Workflow.txt
                        about_WorkflowCommonParameters.help.txt
                        about_WorkflowCommonParameters.txt
                        about_Workflows.help.txt
                        about_Workflows.txt

                        Get-Help should ignore the .txt files (must have changed in…

                        1 vote
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          I agree to the terms of service
                          Signed in as (Sign out)

                          We’ll send you updates on this idea

                          survey  ·  0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
                        • Compiling large number of DSC MOF files is slow

                          We use logic to dynamically compose a ConfigurationData structure and pass it to the configuration. This logic executes quickly. Calling the configuration generates more than 5,000 MOF files for unique nodes. The process takes 1.5 hours on modern server-class hardware with 16GB RAM. Also, the MOF files are all created at the end of the process, rather than one-at-a-time throughout the process. This causes high memory usage. Please optimize the PSDesiredStateConfiguration module to generate large quantities of MOF files more quickly. This issue adds significant delay to the DSC pipeline.

                          7 votes
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            I agree to the terms of service
                            Signed in as (Sign out)

                            We’ll send you updates on this idea

                            5 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
                          • PSWriteline

                            In the most recent engine, you have coded a hook into the internal class Microsoft.PowerShell.ConsoleHostUserInterface so that PSReadLine could be incorporated into PowerShell.exe. This is really nice but I would like to take it a step further. Why not add two PowerShell.exe arguments for a custom read line and write line modules. The arguments would simply be called:
                            -ReadlineHandler <file.xml>
                            -WritelineHandler <file.xml>

                            Sample XML files would be:
                            <ReadlineHandler>
                            <Module Name=”PSReadline”>
                            <Function Name=”PSConsoleHostReadLine”>
                            </ReadlineHandler >

                            <WritelineHandler>
                            <Module Name=”PSWriteline”>
                            <Function Name=”PSConsoleHostWriteLine”>
                            </WritelineHandler>

                            A customer can write an assembly and reference the module name and function name in the XML file accordingly. Today,…

                            1 vote
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              I agree to the terms of service
                              Signed in as (Sign out)

                              We’ll send you updates on this idea

                              0 comments  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
                            • Bug: Get-DscConfigurationStatus doesn't show all resources/configurations

                              We started to use results from Get-DscConfigurationStatus in our monitoring (SCOM) and while analyzing the results we noticed that some partials are not showing up in the results of this command even though tests/set/get is performed on the target node. After analyzing different methods we found out that:

                              * MOF documents generated in C:\Windows\System32\Configuration\ConfigurationStatus seem to limit the results to ~40 last items in DSC configuration
                              * Get-DscConfigurationStatus and Test-DscConfiguration -Detail all use the same source of information, thus provide same, truncated output
                              * The only reliable source of information is details.json file generate when -Verbose output is requested, but…

                              6 votes
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                I agree to the terms of service
                                Signed in as (Sign out)

                                We’ll send you updates on this idea

                                0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
                              • Curated Module Lists

                                The PowerShell gallery should allow users to create "lists" of modules (think of it as an Amazon wish list).

                                A user could create a "favorites" list and add modules and scripts to it to keep track of their favorites over time (maybe even "subscribe" to notifications of new releases of things on the list).

                                A user could also create a "user management modules" list or a "stretching PowerShell's limits" list or a "should have been in the box" list, or a "things I use in my prompt" list ...

                                But most importantly, users should be able to SHARE those lists,…

                                10 votes
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  I agree to the terms of service
                                  Signed in as (Sign out)

                                  We’ll send you updates on this idea

                                  survey  ·  0 comments  ·  PowerShell Gallery  ·  Flag idea as inappropriate…  ·  Admin →
                                • Suggested verbs: Build or Make

                                  Would like to suggest a new verb. Build or Make

                                  New can work, but it's very vague where Build/Make gives a much more definitive indication of the intent. Build-PSModule, Make-DeploymentScript, etc.

                                  1 vote
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    I agree to the terms of service
                                    Signed in as (Sign out)

                                    We’ll send you updates on this idea

                                    0 comments  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Add -HumanReadable parameter to Get-ChildItem

                                    When I use Get-ChildItem it'd be really great if I didn't have to stare at the Length property (by the way, "Length"? Windows already calls this "Size" so just stick to conventions, will'ya?) to understand the size.

                                    This parameter would accept the following values: Auto, KB, MB, GB, TB, PB.

                                    On a multi-GB file we get output like the following for Length: 78697816273. That's HARD to read.

                                    "Auto" would display the current item in the largest measure. Using the previous example, we'd get: 73.29 GB. If I used "KB" we'd get: 76853336.20 KB.

                                    1 vote
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      I agree to the terms of service
                                      Signed in as (Sign out)

                                      We’ll send you updates on this idea

                                      0 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
                                    • script output incompatible

                                      I wrote one python script which just output on cmd, but when I run the script with it's name it opens a new python window

                                      script name: test.py

                                      script content:
                                      print("Content-Type: text/html\n")
                                      print("Hello")
                                      temp = raw_input()

                                      1 vote
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        I agree to the terms of service
                                        Signed in as (Sign out)

                                        We’ll send you updates on this idea

                                        0 comments  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Get-Content bug: A parameter cannot be found that matches parameter name 'Encoding'

                                        Get-Conent with the Encoding parameter works against local file system paths such as this example:
                                        Get-Content -Encoding Byte -Path C:\Users\desktop.ini

                                        However, against a mapped network drive it does not:
                                        Get-Content -Encoding Byte -Path I:\Users\desktop.ini
                                        Get-Content : A parameter cannot be found that matches parameter name 'Encoding'.
                                        At line:1 char:13
                                        + Get-Content -Encoding Byte -Path I:\Users\desktop.ini

                                        The issue can be re-produced against a non-existing network drive as well.
                                        The behaviour is not expected and the error message is very misleading to users who don`t know what dynamic parameters is, since the same code works against a local path where -Encoding is…

                                        1 vote
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          I agree to the terms of service
                                          Signed in as (Sign out)

                                          We’ll send you updates on this idea

                                          0 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
                                        • ISE Run in isolated console

                                          PowerGUI has a Run in External PowerShell Window feature, which executes the code externally, allowing parameters to be passed in, and eliminating some of the ISE quirks when testing code.
                                          I think have this option (along with customizable bracket shading) would be a great ISE feature.

                                          1 vote
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            I agree to the terms of service
                                            Signed in as (Sign out)

                                            We’ll send you updates on this idea

                                            0 comments  ·  ISE and tooling  ·  Flag idea as inappropriate…  ·  Admin →
                                          ← Previous 1 3 4 5 52 53
                                          • Don't see your idea?

                                          Feedback and Knowledge Base