IOCTL_NFP_SET_PAYLOAD IOCTL (nfpdev.h)
Um aplicativo cliente envia dados de mensagem e confirma a publicação com a solicitação IOCTL_NFP_SET_PAYLOAD .
Código principal
Buffer de entrada
O buffer de entrada contém os dados da mensagem a serem transmitidos.
Buffer de saída
Nenhum.
Bloco de status
Irp-IoStatus.Status será definido como STATUS_SUCCESS se a solicitação for bem-sucedida>.
Caso contrário, Status para a condição de erro apropriada como um código NTSTATUS.
Para obter mais informações, consulte Valores NTSTATUS.
Comentários
As seguintes ações são necessárias ao usar este IOCTL:
- Se este IOCTL for enviado em um identificador que não foi aberto anteriormente em um "Pubs\..." filename, o driver DEVE concluí-lo com STATUS_INVALID_DEVICE_STATE.
- Os dados da mensagem são gravados uma vez. Se esse IOCTL for bem-sucedido uma vez, qualquer IOCTL_NFP_SET_PAYLOAD subsequente recebida no mesmo identificador DEVERÁ ser concluída com STATUS_INVALID_DEVICE_STATE.
- Se o IOCTL contiver um buffer de saída, o driver DEVERÁ concluir o IOCTL com STATUS_INVALID_PARAMETER.
- Se o buffer de entrada for maior que o tamanho máximo da mensagem do driver, o driver DEVERÁ concluir o IOCTL com STATUS_INVALID_BUFFER_SIZE.
- Se qualquer dispositivo se tornar próximo depois que esse IOCTL for bem-sucedido e antes que o identificador seja fechado, os dados da mensagem (juntamente com seu tipo) DEVERão ser transmitidos apenas uma vez para o dispositivo próximo.
- Se o mesmo dispositivo (ou diferente) se tornar próximo novamente antes que o identificador seja fechado, a mensagem DEVERÁ ser transmitida mais uma vez.
- Se um dispositivo estiver atualmente próximo quando esse IOCTL for concluído com êxito, os dados da mensagem (juntamente com seu tipo) DEVERão ser transmitidos (apenas uma vez) para o dispositivo próximo. Isso se aplica mesmo que o identificador seja fechado imediatamente.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 8 |
Cabeçalho | nfpdev.h |