Função RegisterAppInstance (smbclnt.h)

Registra a ID AppInstance para um processo.

Sintaxe

DWORD RegisterAppInstance(
  [in] HANDLE ProcessHandle,
  [in] GUID   *AppInstanceId,
  [in] BOOL   ChildrenInheritAppInstance
);

Parâmetros

[in] ProcessHandle

Um identificador de processo para o processo atual ou um processo remoto a ser marcado com oAppInstanceId. Para marcar um processo remoto, o identificador deve ter acesso PROCESS_TERMINATE a esse processo.

[in] AppInstanceId

A ID da instância do aplicativo, que é um GUID .

[in] ChildrenInheritAppInstance

TRUE para marcar os processos filho gerados pelo processo especificado por ProcessHandle; caso contrário, FALSE .

Valor de retorno

Código de retorno Descrição
ERROR_NOT_ENOUGH_MEMORY
O filtro CCF falhou ao alocar os objetos de cache adequados para atender a essa operação.
ERROR_ACCESS_DENIED
O processo atual que está tentando marcar o processo especificado pelo ProcessHandle não tem acesso PROCESS_TERMINATE a esse processo.
ERROR_INVALID_PARAMETER
ProcessHandle não é um identificador para um processo.
ERROR_NOT_FOUND
O minifiltre CCF não foi encontrado.
ERROR_OBJECT_ALREADY_EXISTS
Outro GUID do AppInstance é fornecido para o mesmo processo, o que significa que a função RegisterAppInstance foi chamada duas vezes ou o aplicativo foi registrado duas vezes.

Observações

A função RegisterAppInstance emite uma chamada IOCTL_CCF_REGISTER_APPINSTANCE para o minifiltro CCF. A função passa a GUIDAppInstance, o identificador do processo e os processos filho marcados para o cache CCF que mapeia o identificador do processo para oAppInstanceId .

O IOCTL emitido para marcar outro processo verifica se o processo atual PROCESS_TERMINATE acesso ao processo de destino.

Requisitos

Requisito Valor
de cliente com suporte mínimo Nenhum com suporte
servidor com suporte mínimo Windows Server 2012
da Plataforma de Destino Windows
cabeçalho smbclnt.h
biblioteca NTLanMan.lib
de DLL NTLanMan.dll

Consulte também

Funções de gerenciamento de recursos do cluster de failover