Freigeben über


PxeProviderRecvRequest-Rückruffunktion

Wird aufgerufen, wenn eine Anforderung von einem Client empfangen wird. Diese Funktion wird registriert, indem die PxeRegisterCallback-Funktion aufgerufen wird, wobei der CallbackType-Parameter auf PXE_CALLBACK_RECV_REQUEST festgelegt ist.

Syntax

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

Parameter

hClientRequest [in]

Verarbeiten einer Anforderung, die von einem Client empfangen wird.

pPacket [in]

Zeiger auf den Speicherpuffer, der das empfangene Paket enthält.

uPacketLen [in]

Länge des Puffers in Bytes, auf den der pPacket-Parameter verweist.

pLocalAddress [in]

Zeiger auf eine PXE_ADDRESS Struktur, die die lokale Adresse enthält, unter der das Paket empfangen wurde.

pRemoteAddress [in]

Zeiger auf eine PXE_ADDRESS Struktur, die die Quelladresse des Pakets enthält.

pAction [out]

Gibt die Aktion an, die das System ausführen soll.

Wert Bedeutung
PXE_BA_NBP
1
Der Anbieter hat auf einen Client mit einem standardmäßigen DHCP-Antwortpaket geantwortet, das einen Pfad zum Netzwerkstartprogramm enthält. Die Rückgabe dieser Aktion bedeutet, dass der Anbieter die Clientanforderung erfolgreich abgeschlossen hat, indem er die PxeSendReply-Funktion mindestens einmal aufruft .
PXE_BA_CUSTOM
2
Der Anbieter hat auf einen Client mit einer benutzerdefinierten Antwort geantwortet, die nicht den DHCP-Spezifikationen entspricht. Die Rückgabe dieser Aktion bedeutet, dass der Anbieter die Clientanforderung erfolgreich abgeschlossen hat, indem er die PxeSendReply-Funktion mindestens einmal aufruft .
PXE_BA_IGNORE
3
Der Anbieter möchte die Clientanforderung nicht verarbeiten, und die Anforderung sollte nicht an den nächsten Anbieter übergeben werden. Alle Ressourcen, die der Clientanforderung zugeordnet sind, werden freigegeben, und die Clientanforderung wird ignoriert. Anbieter können diesen Wert auch verwenden, wenn sie den Client erkennen, aber die Anforderung falsch formatiert wurde.
PXE_BA_REJECTED
4
Der Anbieter möchte die Clientanforderung nicht verarbeiten. Das System übergibt die Anforderung an den nächsten Anbieter in der Liste der registrierten Anbieter. Wenn dies der letzte Anbieter in der Liste war, werden alle Ressourcen freigegeben, die der Clientanforderung zugeordnet sind, und die Clientanforderung wird ignoriert.

pContext [in]

An die PxeRegisterCallback-Funktion übergebener Kontextwert.

Rückgabewert

Wenn der Anbieter die Clientanforderung erfolgreich verarbeitet hat, sollte der Rückruf ERROR_SUCCESS zurückgeben, und die PXE_BOOT_ACTION , auf die der pAction-Parameter verweist, enthält die entsprechende Startaktion für diese Anforderung. Wenn der Anbieter die Clientanforderung asynchron verarbeitet, sollte der Rückruf ERROR_IO_PENDING zurückgeben und die PxeAsyncRecvDone-Funktion aufrufen, wenn die Clientanforderung verarbeitet wurde. Im Falle eines Fehlers sollte ein entsprechender Fehlercode zurückgegeben werden, und das System wird so fortgesetzt, als ob die PXE_BA_REJECTED Startaktion angegeben wäre.

Bemerkungen

Der Typ der Pakete, die von einem Anbieter angezeigt werden, kann mit der PxeProviderSetAttribute-Funktion geändert werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Nicht unterstützt
Unterstützte Mindestversion (Server)
Windows Server 2008, Windows Server 2003 mit SP2 [nur Desktop-Apps]

Weitere Informationen

Serverfunktionen der Windows-Bereitstellungsdienste

PxeRegisterCallback

PxeSendReply

PxeProviderSetAttribute