OpenService Function
OpenService Function

Opens an existing service.

Syntax

SC_HANDLE WINAPI OpenService(
  __in  SC_HANDLE hSCManager,
  __in  LPCTSTR lpServiceName,
  __in  DWORD dwDesiredAccess
);


Parameters

hSCManager [in]

A handle to the service control manager database. The OpenSCManager function returns this handle.

lpServiceName [in]

The name of the service to be opened. The maximum string length is 256 characters. The service control manager database preserves the case of the characters, but service name comparisons are always case insensitive. Forward-slash (/) and backslash (\) are invalid service name characters.

dwDesiredAccess [in]

The access to the service. For a list of access rights, see Service Security and Access Rights.

Before granting the requested access, the system checks the access token of the calling process against the discretionary access-control list of the security descriptor associated with the service object.

Return Value

If the function succeeds, the return value is a handle to the service.

If the function fails, the return value is NULL. To get extended error information, call GetLastError.

The following error codes can be set by the service control manager. Others can be set by the registry functions that are called by the service control manager.

Return codeDescription
ERROR_ACCESS_DENIED

The handle does not have access to the service.

ERROR_INVALID_HANDLE

The specified handle is invalid.

ERROR_INVALID_NAME

The specified service name is invalid.

ERROR_SERVICE_DOES_NOT_EXIST

The specified service does not exist.

 

Remarks

The returned handle is only valid for the process that called OpenService. It can be closed by calling the CloseServiceHandle function.

Examples

For an example, see Starting a Service.

Requirements

Minimum supported clientWindows 2000 Professional
Minimum supported serverWindows 2000 Server
HeaderWinsvc.h (include Windows.h)
LibraryAdvapi32.lib
DLLAdvapi32.dll
Unicode and ANSI namesOpenServiceW (Unicode) and OpenServiceA (ANSI)

See Also

ChangeServiceConfig
CloseServiceHandle
ControlService
CreateService
DeleteService
EnumDependentServices
OpenSCManager
QueryServiceConfig
QueryServiceObjectSecurity
QueryServiceStatusEx
SCM Handles
Service Functions
SetServiceObjectSecurity
StartService

Send comments about this topic to Microsoft

Build date: 11/19/2009

© 2009 Microsoft Corporation. All rights reserved.   Terms of Use | Trademarks | Privacy Statement
Page view tracker
Rate the Lightweight library
x
Lightweight builds on ScriptFree (loband) by adding features you've requested: a SearchBox and default code language selection.
Do you like the SearchBox?
Do you like the tabbed code blocks?
How useful is this topic?
Tell us more.
Thanks
x
You're helping to improve MSDN Online.
Feedback
Switch View
Classic
Lightweight Beta
ScriptFree
Switch View