PROTOCOL_CL_DROP_PARTY_COMPLETE función de devolución de llamada (ndis.h)

La función ProtocolClDropPartyComplete la usan los clientes NDIS orientados a la conexión que configuran conexiones de varios puntos. Estos clientes deben tener funciones ProtocolClDropPartyComplete para completar las operaciones asincrónicas que inician con

NdisClDropParty. De lo contrario, la función ProtocolClDropPartyComplete registrada de un controlador de protocolo puede simplemente devolver el control.

Nota Debe declarar la función mediante el tipo PROTOCOL_CL_DROP_PARTY_COMPLETE . Para obtener más información, consulte la sección Ejemplos siguientes.
 

Sintaxis

PROTOCOL_CL_DROP_PARTY_COMPLETE ProtocolClDropPartyComplete;

void ProtocolClDropPartyComplete(
  [in] NDIS_STATUS Status,
  [in] NDIS_HANDLE ProtocolPartyContext
)
{...}

Parámetros

[in] Status

Especifica el estado final de la operación drop-party iniciada por el cliente, que puede ser una de las siguientes:

NDIS_STATUS_SUCCESS

La fiesta ha sido descartada. El NdisPartyHandle que representa a esta entidad, que el cliente almacenado en su área ProtocolPartyContext , ahora no es válido.

NDIS_STATUS_FAILURE

La entidad especificada era la última que queda en la vc multipoint del cliente. Por lo tanto, el cliente debe llamar a NdisClCloseCall para quitar esta entidad.

[in] ProtocolPartyContext

Especifica el identificador del área de contexto por parte del cliente, que el cliente proporcionó originalmente a NDIS cuando llamó a NdisClAddParty o NdisClMakeCall.

Valor devuelto

None

Observaciones

Una llamada a ProtocolClDropPartyComplete indica que el administrador de llamadas ha completado el procesamiento de la solicitud iniciada por la llamada anterior del cliente a NdisClDropParty. ProtocolClDropPartyComplete puede liberar el área de contexto asignada por el cliente o prepararla para su reutilización en una llamada posterior a NdisClAddParty.

Si el cliente está en proceso de desmontar un VC de varios puntos que creó, ProtocolClDropPartyComplete puede llamar a NdisClDropParty con cualquier NdisPartyHandle válido a una de las partes restantes de la vc multipoint activa del cliente. Si solo una parte más permanece en su VC de varios puntos, el cliente debe quitar esa entidad pasando su NdisPartyHandle a NdisClCloseCall.

Ejemplos

Para definir una función ProtocolClDropPartyComplete , primero debe proporcionar una declaración de función que identifique el tipo de función que va a definir. Windows proporciona un conjunto de tipos de función para controladores. Declarar una función mediante los tipos de función ayuda a Code Analysis for Drivers, Static Driver Verifier (SDV) y otras herramientas de comprobación a encontrar errores y es un requisito para escribir controladores para el sistema operativo Windows.

Por ejemplo, para definir una función ProtocolClDropPartyComplete denominada "MyClDropPartyComplete", use el tipo PROTOCOL_CL_DROP_PARTY_COMPLETE como se muestra en este ejemplo de código:

PROTOCOL_CL_DROP_PARTY_COMPLETE MyClDropPartyComplete;

A continuación, implemente la función de la siguiente manera:

_Use_decl_annotations_
VOID
 MyClDropPartyComplete(
    NDIS_STATUS  Status,
    NDIS_HANDLE  ProtocolPartyContext
    )
  {...}

El tipo de función PROTOCOL_CL_DROP_PARTY_COMPLETE se define en el archivo de encabezado Ndis.h. Para identificar con más precisión los errores al ejecutar las herramientas de análisis de código, asegúrese de agregar la anotación Use_decl_annotations a la definición de función. La anotación Use_decl_annotations garantiza que se usen las anotaciones que se aplican al tipo de función PROTOCOL_CL_DROP_PARTY_COMPLETE en el archivo de encabezado. Para obtener más información sobre los requisitos de las declaraciones de función, vea Declarar funciones mediante tipos de roles de función para controladores NDIS.

Para obtener información sobre Use_decl_annotations, consulte Anotación del comportamiento de la función.

Requisitos

Requisito Value
Cliente mínimo compatible Compatible con controladores NDIS 6.0 y NDIS 5.1 (consulte ProtocolClDropPartyComplete (NDIS 5.1)) en Windows Vista. Compatible con controladores NDIS 5.1 (consulte ProtocolClDropPartyComplete (NDIS 5.1)) en Windows XP.
Plataforma de destino Windows
Encabezado ndis.h (incluya Ndis.h)
IRQL <= DISPATCH_LEVEL

Consulte también

NdisClAddParty

NdisClCloseCall

NdisClDropParty

NdisClMakeCall

NdisCmDropPartyComplete

NdisFreeMemory

NdisFreeToNPagedLookasideList

NdisMCmDropPartyComplete

ProtocolCmDropParty