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) |