共用方式為


PxeProviderRecvRequest 回呼函式

從用戶端收到要求時呼叫。 呼叫 PxeRegisterCallback 函式,並將 CallbackType 參數設定為 PXE_CALLBACK_RECV_REQUEST,以註冊此函式。

語法

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 部署服務伺服器函式

PxeRegisterCallback

PxeSendReply

PxeProviderSetAttribute