NdisMFreePort 함수(ndis.h)
NdisMFreePort 함수는 이전에 NdisMAllocatePort 함수와 함께 할당된 NDIS 포트를 해제합니다.
통사론
NDIS_STATUS NdisMFreePort(
NDIS_HANDLE NdisMiniportHandle,
[in] NDIS_PORT_NUMBER PortNumber
);
매개 변수
NdisMiniportHandle
NDIS가 MiniportAdapterHandle 매개 변수에 전달한 미니포트 어댑터 핸들 MiniportInitializeEx 함수입니다.
[in] PortNumber
NDIS에서 해제해야 하는 NDIS 포트의 수입니다. PortNumber 값은 ULONG 데이터 형식이 있는 NDIS_PORT_NUMBER 값입니다. NDIS는 PortNumber 멤버에 포트 번호를 제공했습니다. 미니포트 드라이버가 NdisMAllocatePort 함수를 호출할 때 구조체를 NDIS_PORT_CHARACTERISTICS.
포트 번호는 1부터 0xffffff까지의 숫자일 수 있습니다. 기본 포트를 나타내는 PortNumber 0으로 설정할 수 없습니다.
반환 값
NdisMFreePort 다음 값 중 하나를 반환할 수 있습니다.
반환 코드 | 묘사 |
---|---|
|
NDIS는 포트에 대한 리소스를 성공적으로 해제했습니다. |
|
포트 번호가 잘못되었기 때문에 NDIS에서 포트에 대한 리소스를 해제할 수 없습니다. |
|
NDIS는 포트가 사용 가능한 작업이 잘못된 상태에 있으므로 포트에 대한 리소스를 해제할 수 없습니다. 포트를 해제하려면 포트가 할당된 상태여야 합니다. |
|
PortNumber 매개 변수에 제공된 포트 번호가 잘못되었습니다. |
발언
미니포트 드라이버가 NdisMAllocatePort 함수를 호출하여 포트를 할당한 경우 드라이버는 MiniportHaltEx 함수에서 반환하기 전에 포트를 해제해야 합니다. 미니포트 드라이버가 NetEventPortActivation PnP(플러그 앤 플레이) 이벤트를 실행하여 포트를 활성화한 경우 드라이버는 포트를 해제하기 전에 포트에 대한 NetEventPortDeactivation PnP 이벤트를 실행해야 합니다.
미니포트 드라이버가 NdisMFreePort 호출하여 포트를 해제하면 NDIS는 해제된 포트에 할당된 포트 번호를 해제하여 NDIS가 포트 번호를 다시 사용할 수 있도록 합니다.
미니포트 드라이버는 기본 포트를 해제하려고 시도해서는 안됩니다.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | NDIS 6.0 이상에서 지원됩니다. |
대상 플랫폼 | 보편적 |
헤더 | ndis.h(Ndis.h 포함) |
라이브러리 | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI 규정 준수 규칙 | Irql_Miniport_Driver_Function(ndis) |
참고 항목
NDIS 포트 해제