Windows services are an essential part of the operating system. They run in the background and provide functionality that Windows and installed applications depend on.

As a Windows administrator, you will regularly find yourself starting, stopping, or changing the startup type of services. This can be done using PowerShell or the graphical Services management console (services.msc).

However, there is one important detail that is sometimes overlooked: You cannot start a service when its startup type is set to Disabled.

Before you can start such a service, you must first change its startup type to Manual or Automatic.

In this article, we will look at how to enable a disabled Windows service using PowerShell and how to perform the same operation using services.msc.

1. Working with Windows services using PowerShell

For this example, we will use PowerShell running with administrative privileges.

You can start PowerShell by right-clicking the Start button and selecting Terminal (Admin) or Windows PowerShell (Admin).

Windows provides several PowerShell cmdlets for managing services:

We can start and stop services that are configured as Manual or Automatic. However, services with a Disabled startup type cannot be started until their startup configuration is changed.

Let’s look at an example.

2. Checking the startup type of a service

We will use the Smart Card service, which has the service name ScardSvr.

The Smart Card service provides support for smart card readers and related functionality. On a system where smart cards are not required, this service might be configured as Disabled.

First, let’s inspect the service using Get-Service and Format-List:

Get-Service ScardSvr | Format-List *

This command displays all available properties of the service.

Look for the StartType property.

For this example, the output indicates that the startup type is:

StartType : Disabled

This tells us that the service is currently configured as Disabled.

It is important to understand that the startup type and the current service status are two different things. A service can be stopped but still be configured to start manually or automatically.

When a service is Disabled, Windows prevents it from being started by a user or an application.

3. Trying to start a disabled service

Let’s see what happens when we try to start the Smart Card service without changing its startup type.

Run the following command:

Start-Service ScardSvr

Instead of successfully starting the service, PowerShell returns an error indicating that the service cannot be started.

This is expected behavior.

The problem is not necessarily related to the service itself. The startup configuration simply prevents Windows from starting it.

So, how do we fix this?

4. Enabling the service using Set-Service

To change the startup type, we can use the Set-Service cmdlet.

In this example, we will change the startup type from Disabled to Manual:

Set-Service ScardSvr -StartupType Manual

The command does not produce any output by default. However, it changes the service configuration.

Why choose Manual?

Setting a service to Manual allows Windows, an application, or an administrator to start it when required. It does not mean that the service will automatically start every time Windows boots.

If the service needs to start automatically with Windows, you can instead use:

Set-Service ScardSvr -StartupType Automatic

For our example, Manual is sufficient.

Now that the service is no longer disabled, we can try starting it again.

Start-Service ScardSvr

This time, the command should successfully start the service, assuming its dependencies and other requirements are satisfied.

We can verify the result with:

Get-Service ScardSvr | Format-List Name, DisplayName, Status, StartType

The output should now show the service as Running, with its startup type set to Manual.

5. Enabling a disabled service using services.msc

PowerShell is not the only way to manage Windows services. We can also perform the same operation using the graphical Services management console.

To open the console:

  1. Press Windows + R.
  2. Type services.msc.
  3. Press Enter.

The Services console displays the services installed on the computer, including their current status and startup type.

Find the Smart Card service in the list.

Double-click the service to open its Properties window.

Under the General tab, you will find the Startup type dropdown menu.

When the service is disabled, this setting will show:

Disabled

Change the startup type to:

Manual

Click Apply to save the change.

You can now click the Start button to start the service.

Click OK to close the Properties window.

The Smart Card service is now enabled and can be started when required.

6. Manual versus Automatic: Which startup type should you choose?

When changing the startup type of a Windows service, it is important to understand the available options.

Disabled

The service cannot be started by a user or application. You must change its startup type before it can be started.

Manual

The service does not automatically start during normal system startup. It can, however, be started manually or by an application when needed.

Automatic

The service is configured to start automatically during Windows startup.

Automatic (Delayed Start)

The service is configured to start automatically, but Windows delays its startup until after the initial startup process.

For troubleshooting purposes, Manual is often a sensible choice when you temporarily need to enable a disabled service without configuring it to start automatically every time Windows boots.

7. An important detail for Windows administrators

This is something I believe every Windows administrator should keep in mind.

When troubleshooting a service that refuses to start, don’t immediately assume that something is wrong with the service itself.

Always check its startup type first.

A service configured as Disabled cannot be started using Start-Service, regardless of whether you run PowerShell with administrative privileges.

The correct approach is:

  1. Check the service configuration.
  2. If the startup type is Disabled, change it to Manual or Automatic.
  3. Start the service.
  4. Verify its status and startup type.

Here is the complete sequence for our Smart Card example:

# Check the service configuration
Get-Service ScardSvr | Format-List *
# Enable the service by setting its startup type to Manual
Set-Service ScardSvr -StartupType Manual
# Start the service
Start-Service ScardSvr
# Verify the result
Get-Service ScardSvr | Format-List Name, DisplayName, Status, StartType

A final note: Don’t enable services indiscriminately. Some services are intentionally disabled for security, performance, or organizational policy reasons. Always check why a service was disabled before changing its configuration.

Conclusion

Managing Windows services is a routine task for system administrators, and PowerShell makes it quick and straightforward.

The important lesson from this example is that changing a service’s startup type and starting the service are two separate operations.

If a service is Disabled, you must first change its startup type using Set-Service or the Services console (services.msc). Only then can you successfully start it.

It is a small detail, but remembering it can save you unnecessary troubleshooting time!

Geef een reactie