다음을 통해 공유


PxeProviderRecvRequest 콜백 함수

클라이언트에서 요청을 수신할 때 호출됩니다. 이 함수는 CallbackType 매개 변수가 PXE_CALLBACK_RECV_REQUEST 설정된 PxeRegisterCallback 함수를 호출하여 등록됩니다.

구문

DWORD PXEAPI PxeProviderRecvRequest(
  _In_  HANDLE          hClientRequest,
  _In_  PVOID           pPacket,
  _In_  ULONG           uPacketLen,
  _In_  PXE_ADDRESS     *pLocalAddress,
  _In_  PXE_ADDRESS     *pRemoteAddress,
  _Out_ PXE_BOOT_ACTION pAction,
  _In_  PVOID           pContext
);

매개 변수

hClientRequest [in]

클라이언트에서 받은 요청에 대한 핸들입니다.

pPacket [in]

받은 패킷을 포함하는 메모리 버퍼에 대한 포인터입니다.

uPacketLen [in]

pPacket 매개 변수가 가리키는 버퍼의 길이(바이트)입니다.

pLocalAddress [in]

패킷이 수신된 로컬 주소를 포함하는 PXE_ADDRESS 구조체에 대한 포인터입니다.

pRemoteAddress [in]

패킷의 원본 주소를 포함하는 PXE_ADDRESS 구조체에 대한 포인터입니다.

pAction [out]

시스템에서 수행해야 하는 작업을 지정합니다.

의미
PXE_BA_NBP
1
공급자가 네트워크 부팅 프로그램의 경로를 포함하는 표준 DHCP 응답 패킷을 사용하여 클라이언트에 회신했습니다. 이 작업을 반환하면 공급자가 PxeSendReply 함수를 한 번 이상 호출하여 클라이언트 요청을 성공적으로 완료했습니다.
PXE_BA_CUSTOM
2
공급자가 DHCP 사양을 준수하지 않는 사용자 지정 응답을 사용하여 클라이언트에 회신했습니다. 이 작업을 반환하면 공급자가 PxeSendReply 함수를 한 번 이상 호출하여 클라이언트 요청을 성공적으로 완료했습니다.
PXE_BA_IGNORE
3
공급자는 클라이언트 요청을 서비스하지 않으며 요청을 다음 공급자에게 전달하면 안 됩니다. 클라이언트 요청과 연결된 모든 리소스가 해제되고 클라이언트 요청이 무시됩니다. 공급자는 클라이언트를 인식하지만 요청 형식이 잘못된 경우에도 이 값을 사용할 수 있습니다.
PXE_BA_REJECTED
4
공급자는 클라이언트 요청을 서비스하지 않습니다. 시스템은 등록된 공급자 목록의 다음 공급자에게 요청을 전달합니다. 이 공급자가 목록의 마지막 공급자인 경우 클라이언트 요청과 연결된 모든 리소스가 해제되고 클라이언트 요청이 무시됩니다.

pContext [in]

PxeRegisterCallback 함수에 전달된 컨텍스트 값입니다.

반환 값

공급자가 클라이언트 요청을 성공적으로 처리한 경우 콜백은 ERROR_SUCCESS 반환해야 하며 pAction 매개 변수가 가리키는 PXE_BOOT_ACTION 이 요청에 대한 적절한 부팅 작업을 포함합니다. 공급자가 클라이언트 요청을 비동기적으로 처리하는 경우 콜백은 ERROR_IO_PENDING 반환하고 클라이언트 요청이 처리될 때 PxeAsyncRecvDone 함수를 호출해야 합니다. 오류가 발생할 경우 적절한 오류 코드가 반환되고 PXE_BA_REJECTED 부팅 작업이 지정된 것처럼 시스템이 진행됩니다.

설명

공급자가 볼 수 있는 패킷 유형은 PxeProviderSetAttribute 함수를 사용하여 변경할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트
지원되는 버전 없음
지원되는 최소 서버
Windows Server 2008, Windows Server 2003 SP2 [데스크톱 앱만 해당]

추가 정보

Windows Deployment Services 서버 함수

PxeRegisterCallback

PxeSendReply

PxeProviderSetAttribute