Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Dans l’exemple de code suivant, le moniteur définit un filtre de capture qui spécifie adresse IP uniquement et les données de protocole demandées.
STDMETHODIMP CTestMon::OnFrames(UPDATE_EVENT Event)
{
DWORD i;
LPFRAMETABLE lpFrameTable = Event.lpFrameTable;
// The frame table can wrap the indexes.
for (
i = lpFrameTable->StartIndex;
i != lpFrameTable->EndIndex;
(i == lpFrameTable->FrameTableLength ) ? i=0: i ++ )
{
LPFRAME_DESCRIPTOR lpFrameDesc = &lpFrameTable->Frames[i];
// Cast the frame data to an unaligned pointer to an IP
// structure. A try/catch block could be a workaround, but
// if the capture filter is set correctly, this is the
// verifiable IP.
ULPIP ulpIP = (ULPIP)(&lpFrameDesc->FramePointer[lpFrameDesc->LowProtocolOffset]);
// Now examine the IP frame.
}
return NOERROR;
}