---
name: "StartServiceA"
section: "3w"
platform: "linux"
package: "libwine-dev"
version: "1.4.1-4"
release: "Debian 7 (Wheezy)"
platforms: ["linux"]
url: "https://new.carta.tech/StartServiceA"
---

# StartServiceA(3w)

## NAME

**StartServiceA** (ADVAPI32.@)

## SYNOPSIS

BOOL StartServiceA\
  (\
   SC\_HANDLE *hService*,\
   DWORD     *dwNumServiceArgs*,\
   LPCSTR\*   *lpServiceArgVectors*\
  )

## DESCRIPTION

Start a service.

## PARAMS

*hService* **\[In\]**  Handle of service.

*dwNumServiceArgs* **\[In\]**  Number of arguments.

*lpServiceArgVectors* **\[In\]**  Address of array of argument strings.

## NOTES

**-** **NT** implements this function using an obscure **RPC** call.

**-** You might need to do a **"setenv SystemRoot \\WINNT"** in your .cshrc to get things like **"%SystemRoot%\\System32\\service.exe"** to load.

**-** This will only work for shared address space. How should the service args be transferred when address spaces are separated?

**-** Can only start one service at a time.

**-** Has no concept of privilege.

## RETURNS

**Success:** **TRUE**.

**Failure:** **FALSE**

## IMPLEMENTATION

Declared in **"winsvc.h"**.

Implemented in **"dlls/advapi32/service.c"**.

Debug channel **"service"**.
