LPDHCP_NEWPKT回呼函式 (dhcpssdk.h)
DhcpNewPktHook 函式會在收到即將處理的 DHCP 封包之後,由 Microsoft DHCP Server 呼叫。 由於 DhcpNewPktHook 函數調用位於 Microsoft DHCP 伺服器處理的重要路徑中,因此此函式應該儘快執行並傳回,否則效能將會受到影響。
DhcpNewPktHook 函式是由註冊重要 Microsoft DHCP 伺服器事件通知的第三方 DLL 所實作。
語法
LPDHCP_NEWPKT LpdhcpNewpkt;
DWORD LpdhcpNewpkt(
[in, out] LPBYTE *Packet,
[in, out] DWORD *PacketSize,
[in] DWORD IpAddress,
[in] LPVOID Reserved,
[in, out] LPVOID *PktContext,
[out] LPBOOL ProcessIt
)
{...}
參數
[in, out] Packet
包含封包的 4Kb 字元緩衝區指標。
[in, out] PacketSize
Packet 參數大小的指標。
[in] IpAddress
接收封包之套接字IP位址的指標。 IP 位址會依主機順序排列。
[in] Reserved
保留供未來使用。
[in, out] PktContext
第三方 DLL 提供的指標,未來由 Microsoft DHCP 伺服器使用此特定封包的參考。 對這類追蹤感興趣的第三方 DLL 負責提供和追蹤此封包內容。
[out] ProcessIt
識別 Microsoft DHCP 伺服器是否應該繼續處理封包的旗標。 設定為 TRUE ,表示應該繼續處理。 設定為 FALSE ,讓 Microsoft DHCP Server 卸除封包。
傳回值
傳回值是由提供回呼的應用程式所定義。
備註
如果很有用,第三方 DLL 可以修改 封包 緩衝區,或透過適當修改 Packet 和 PacketSize 參數傳回新的封包緩衝區。
如果第三方 DLL 需要追蹤指定的封包及其透過 Microsoft DHCP Server 的進度,它可以在 PktContext 中提供封包內容,並使用透過其 DHCP 處理追蹤封包進度的內部結構。 PktContext 中提供的內容會當做參數傳遞至許多其他 DHCP 伺服器 API 函式,以啟用識別。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 都不支援 |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | dhcpssdk.h |
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應