Função PeerDistRegisterForStatusChangeNotification (peerdist.h)
A função PeerDistRegisterForStatusChangeNotification solicita o serviço distribuição de pares status notificação de alteração.
Sintaxe
DWORD PeerDistRegisterForStatusChangeNotification(
[in] PEERDIST_INSTANCE_HANDLE hPeerDist,
[in, optional] HANDLE hCompletionPort,
[in, optional] ULONG_PTR ulCompletionKey,
[in] LPOVERLAPPED lpOverlapped,
[out] PEERDIST_STATUS *pPeerDistStatus
);
Parâmetros
[in] hPeerDist
Um PEERDIST_INSTANCE_HANDLE retornado por PeerDistStartup.
[in, optional] hCompletionPort
Um identificador para a porta de conclusão que pode ser usado para recuperar a notificação de conclusão da função assíncrona. Para criar uma porta de conclusão, use a função CreateIoCompletionPort. Este parâmetro pode ser NULL.
[in, optional] ulCompletionKey
Valor a ser retornado por meio do parâmetro lpCompletionKey da função GetQueuedCompletionStatus . Esse parâmetro é ignorado quando hCompletionPort é NULL.
[in] lpOverlapped
Ponteiro para uma estrutura OVERLAPPED . Se o membro hEvent da estrutura não for NULL, ele será sinalizado por meio de SetEvent() usado para sinalizar a notificação. Isso pode ocorrer mesmo se a porta de conclusão for especificada por meio do argumento hCompletionPort .
[out] pPeerDistStatus
Um ponteiro para uma enumeração PEERDIST_STATUS que indica o status atual do serviço distribuição de pares.
Retornar valor
Se a função for bem-sucedida, o valor retornado será ERROR_IO_PENDING. Caso contrário, a função pode retornar um dos seguintes valores:
Código de retorno | Descrição |
---|---|
|
Um ou mais parâmetros são inválidos. |
|
O identificador hPeerDist é inválido. |
Comentários
Essa função registra opcionalmente uma porta de conclusão e uma estrutura OVERLAPPED para status notificação de alteração. Após a conclusão bem-sucedida, o parâmetro pPeerDistStatus conterá um valor de PEERDIST_STATUS válido.
Somente um registro ativo para cada sessão é permitido. O chamador deve se registrar para notificação sempre que ele sinalizar. A notificação será enviada somente se o status atual for alterado em relação à notificação anterior. Após a primeira chamada da função PeerDistRegisterForStatusChangeNotification para a sessão distribuição de pares, a primeira notificação será disparada somente se o status não for mais igual a PEERDIST_STATUS_DISABLED.
Uma alteração status distribuição de pares pode resultar na mudança do serviço distribuição de pares para um estado disponível, indisponível ou desabilitado. Se o novo status estiver desabilitado ou indisponível, o conteúdo, as informações de conteúdo ou os identificadores de fluxo aos qual o chamador tem acesso não funcionarão mais. Nesse caso, qualquer API que usa esses identificadores falhará com o erro PEERDIST_ ERROR_INVALIDATED. O chamador deve fechar explicitamente os identificadores chamando a API de Distribuição de Pares apropriada.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 7 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 R2 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | peerdist.h |
Biblioteca | PeerDist.lib |
DLL | PeerDist.dll |
Confira também
PeerDistServerCloseContentInformation