RegisterService
9/8/2008
Essa função cria uma nova instância de um serviço.
Syntax
HANDLE RegisterService(
LPCWSTR lpszType,
DWORD dwIndex,
LPCWSTR lpszLib,
DWORD dwInfo
);
Parameters
- lpszType
[no] Ponteiro para o seqüência de caracteres que contém os três-codificar de prefixo serviço letra.
- dwIndex
[no] Especifica o número de índice serviço entre 0 e 9.
- lpszLib
[no] Ponteiro para o seqüência de caracteres que contém o nome do arquivo de DLL que contém o serviço.
- dwInfo
[no] Especifica o argumento passado durante a chamar para o serviço é exposto xxx_Init (services.exe) função.
Return Value
Um identificador para o serviço é retornado em caso de sucesso. A NULL valor é retornado na falha. Para informações de erro estendidas, chamar GetLastError.
Remarks
RegisterService Pode ser usado para qualquer carregar um serviço descarregado na memória ou criar uma nova instância de um serviço já carregado.
RegisterService carregar primeiro será o arquivo DLL especificado em lpszLib e verificar que ele exporta o xxx_Init, xxx_Deinit (services.exe), e xxx_IOControl (services.exe) funções. RegisterService falhará com ERROR_FILE_NOT_FOUND se o arquivo DLL não pode ser carregado e ERROR_INVALID_FUNCTION se o arquivo não exportar o exigido funções.
Variando instâncias de um serviço execução a partir de DLL mesmo e com o mesmo lpszType valor são diferenciadas por diferentes dwIndex Os valores. Esses valores devem ser exclusivo para um determinado serviço. RegisterService irá verificar que nenhum serviço tenha a mesma lpszType Prefixo e dwIndex valor. Se esse for a maiúsculas e minúsculas, ele falhará e SetLastError Para ERROR_DEVICE_IN_USE.
O Services.exe será, em seguida, chamar o xxx_Init função e transmitir ele o valor armazenado no dwInfo. Se o serviço retorna um valor de zero, o Services.exe falhará e SetLastError Para ERROR_OPEN_FAILED. Caso contrário, ele irá armazenar a valor de retorno de xxx_Init e transmiti-lo como um valor contexto em um tempo posterior quando chamado outra função do serviço such as xxx_Deinit e xxx_IOControl.
Observação
RegisterService está disponível para uso somente aplicativos normais.Para evitar problemas confiança, é recomendável que você use o Registro para configurar seu serviço, em seguida, chamar ActivateService Para carregar o serviço.
Requirements
Header | service.h |
Library | coredll.lib |
Windows Mobile | Windows Mobile Version 5.0 and later |
See Also
Reference
xxx_Init (Services.exe)
xxx_Deinit (Services.exe)
xxx_IOControl (Services.exe)
Concepts
Services.exe Registry Settings