PROTOCOL_CL_INCOMING_DROP_PARTY función de devolución de llamada (ndis.h)
La función ProtocolClIncomingDropParty la usan los clientes NDIS orientados a la conexión que configuran conexiones de varios puntos. Estos clientes deben tener funciones ProtocolClIncomingDropParty . De lo contrario, la función ProtocolClIncomingDropParty registrada de un controlador de protocolo puede simplemente devolver el control.
Sintaxis
PROTOCOL_CL_INCOMING_DROP_PARTY ProtocolClIncomingDropParty;
void ProtocolClIncomingDropParty(
[in] NDIS_STATUS DropStatus,
[in] NDIS_HANDLE ProtocolPartyContext,
[in] PVOID CloseData,
[in] UINT Size
)
{...}
Parámetros
[in] DropStatus
Indica el motivo por el que se va a quitar la parte. Normalmente, esto es NDIS_STATUS_SUCCESS si la entidad en la nota remota inició un cierre de su conexión, pero podría ser cualquier estado determinado por CM si el administrador de llamadas inició esta operación de eliminación debido a problemas de red detectados.
[in] ProtocolPartyContext
Especifica el identificador del área de contexto por parte del cliente para que se quite la entidad. El cliente proporcionó originalmente este identificador a NDIS cuando llamó a NdisClAddParty o NdisClMakeCall.
[in] CloseData
Puntero a un búfer que contiene un mensaje de cierre específico del protocolo, posiblemente uno proporcionado por el cliente remoto que el administrador de llamadas recibió a través de la red, o este parámetro puede ser NULL.
Cuando DropStatus se NDIS_STATUS_SUCCESS, este parámetro es NULL si el medio de red subyacente no admite transferencias de datos al cerrar una conexión. Sin embargo, cualquier administrador de llamadas determinado podría definir una estructura para pasar información de diagnóstico adicional a sus clientes en operaciones de eliminación causadas por problemas en la red.
[in] Size
Especifica la longitud, en bytes, del búfer en CloseData, cero si CloseData es NULL.
Valor devuelto
None
Observaciones
Una llamada a ProtocolClIncomingDropParty indica que se ha producido una de las siguientes acciones:
- El administrador de llamadas ha recibido una solicitud a través de la red para cerrar una conexión establecida, identificada por NdisPartyHandle que el cliente almacenó en su área de contexto por parte en ProtocolPartyContext .
- El administrador de llamadas ha detectado que los problemas de red impedirán más transferencias de datos en la conexión establecida.
ProtocolClIncomingDropParty debe tener en cuenta el NdisPartyHandle que el cliente obtuvo de NdisClAddParty o NdisClMakeCall no válido. ProtocolClIncomingDropParty puede liberar el área de contexto por parte del cliente o prepararla para su reutilización en una llamada posterior a NdisClAddParty.
Ejemplos
Para definir una función ProtocolClIncomingDropParty , 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 ProtocolClIncomingDropParty denominada "MyClIncomingDropParty", use el tipo de PROTOCOL_CL_INCOMING_DROP_PARTY como se muestra en este ejemplo de código:
PROTOCOL_CL_INCOMING_DROP_PARTY MyClIncomingDropParty;
A continuación, implemente la función de la siguiente manera:
_Use_decl_annotations_
VOID
MyClIncomingDropParty(
NDIS_STATUS DropStatus,
NDIS_HANDLE ProtocolPartyContext,
PVOID CloseData,
UINT Size
)
{...}
El tipo de función PROTOCOL_CL_INCOMING_DROP_PARTY 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_INCOMING_DROP_PARTY 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 ProtocolClIncomingDropParty (NDIS 5.1)) en Windows Vista. Compatible con controladores NDIS 5.1 (consulte ProtocolClIncomingDropParty (NDIS 5.1)) en Windows XP. |
Plataforma de destino | Windows |
Encabezado | ndis.h (incluya Ndis.h) |
IRQL | <= DISPATCH_LEVEL |