I would like to see the property "StartType" added to Get-Services - by Bob Landau

Status : 

  Fixed<br /><br />
		This item has been fixed in the current or upcoming version of this product.<br /><br />
		A more detailed explanation for the resolution of this particular item may have been provided in the comments section.

Sign in
to vote
ID 424948 Comments
Status Closed Workarounds
Type Suggestion Repros 6
Opened 3/18/2009 2:51:42 PM
Access Restriction Public


Briefly the motivation for this is so you can query all services that should be running but aren't. 

This is a typical Admin type of task for checking the health of a machine.  While this can be done using a WMI query the data you get back is not as rich as what Get-Service returns. 

This is how you would use this feature once Get-Service had this property

Get-Service | ? {$_.StartType -eq 'Auto_Start' -and $_.Status -ne 'Running'}

What I'm asking is extermely unlikely to break anyone, requires a minimal amount of code churn and would benefit _many_


I did look for a way that didn't require using the registry but was unable to find any other solution that wasn't much more complicated. Also the registry values under


have been around since at least NT 3.5 if not NT 3.1 so is extermely unlikely to change.

thx for considering this 

Sign in to post a comment.
Posted by Christopher King on 3/20/2017 at 1:30 PM
Sorry, I am not seeing that. Can you elaborate??
Posted by Microsoft on 10/10/2015 at 6:06 PM
This is fixed and will be available in the next Technical Preview of Windows Server 2016. A new "StartType" property has been added to the System.ServiceProcess.ServiceController class in an update to .NET Framework 4.6.1. This StartType property will be exposed in the objects returned by Get-Service.
Posted by rpseekell on 9/8/2015 at 11:11 AM
So you can Set-Service -StartupType, but you cannot read it again with Get-Service. ????
Posted by Matt McNabb on 7/20/2015 at 6:41 AM
It would be great if the StartType also supports Automatic (Delayed), which WMI does not.
Posted by m.vermeer on 6/12/2015 at 12:05 PM
Its ridiculous! Its not even in Windows 10?!
Posted by Charles Palmer on 2/27/2015 at 6:26 AM
I would find this method very helpful. I have numerous processes dealing with multiple services that have a common porting of the display name. Therefore I use a wildcard to retrieve all services with that common name piece. I then pipe that to Stop-Service or Start-Service. The problem occurs with Start-Service when I pipe in a service that is set to disabled. While it doesn't break my process, it makes "ugly" errors for my less knowledgeable help desk when they run the commands I wrote for them. If I could easily filter out StartupType = Disable with Get-Service, problem solved. I am trying to figure out how to do a wildcard search with WMI to get the same list I get with Get-Service and then start the services that aren't disabled.
Posted by Joel 'Jaykul' Bennett on 2/4/2014 at 9:31 PM
This is a dupe of https://connect.microsoft.com/PowerShell/feedback/details/416680
Posted by Pawel Lakomski on 3/21/2013 at 12:36 PM
I am really supprised it is still missing in W2K12. I wish it was added to the next release :)
Posted by andrefurtado on 10/16/2012 at 6:50 AM
Although I posted a workaround I agree it should be incorporated to powershell; It should be native.
Posted by Roman Kuzmin on 3/30/2010 at 7:13 AM
Yes, this is a pity that such important information is missed. WMI solves the problem (see workaround) but this way requires some extra steps not obvious for everyone, perhaps. Built-in Windows GUI, BTW, provides this column in the service table.