NDIS 중간 드라이버는 DriverEntry 함수의 컨텍스트에서 MiniportXxx 함수 및 ProtocolXxx 함수를 NDIS에 등록해야 합니다. MiniportXxx 함수를 등록하려면 중간 드라이버가 NDIS_INTERMEDIATE_DRIVER 플래그 집합을 사용하여 NdisMRegisterMiniportDriver를 호출해야 합니다. 이 플래그는 드라이버가 MiniportDriverCharacteristics에서 전달하는 NDIS_MINIPORT_DRIVER_CHARACTERISTICS 구조에 있습니다. 이 호출은 중간 드라이버의 MiniportXxx 함수를 내보냅니다. MiniportXxx 함수를 등록하는 방법에 대한 자세한 내용은 중간 드라이버를 미니포트 드라이버로 등록을 참조하세요.
중간 드라이버는 가상 미니포트가 초기화되는 시기와 드라이버가 어댑터에서 송신 및 요청을 수락할 준비가 되면 제어합니다. NDIS는 PnP(플러그 앤 플레이) 관리자가 가상 미니포트 디바이스를 시작한 후 중간 드라이버가 해당 디바이스에 대해 NdisIMInitializeDeviceInstanceEx를 호출한 후 중간 드라이버의 MiniportInitializeEx 함수를 호출합니다. MiniportInitializeEx 호출은 나중에 발생할 수 있으므로 NdisIMInitializeDeviceInstanceEx대한 호출 컨텍스트 내에 반드시 있는 것은 아닙니다. 중간 드라이버가 둘 이상의 가상 미니포트를 내보내는 경우 드라이버는 네트워크 요청에 사용할 수 있는 각 가상 미니포트에 대해 NdisIMInitializeDeviceInstanceEx 를 호출해야 합니다.
ProtocolXxx 함수를 등록하려면 중간 드라이버가 NdisRegisterProtocolDriver 함수를 호출해야 합니다. ProtocolXxx 함수를 등록하는 방법에 대한 자세한 내용은 프로토콜 드라이버로 중간 드라이버 등록을 참조하세요.