Udostępnij za pośrednictwem


Zagadnienia dotyczące programowania (Monitor sieci)

Ten temat zawiera informacje o programowaniu. Poniższa lista zawiera kilka wskazówek dotyczących programowania, które ułatwiają pisanie analizatora.

Napiwek Opis
Automatyczne instalowanie analizatora Zaimplementuj funkcję ParserAutoInstallInfo, aby automatycznie zainstalować analizator i zaktualizować skojarzone pliki INI. W przypadku ręcznego instalowania analizatora należy ręcznie zaktualizować wszystkie skojarzone pliki INI.
Analizowanie właściwości protokołu Zaimplementuj funkcję AttachProperties, aby przeanalizować właściwości protokołu. Unikaj używania funkcji AttachPropertyInstanceEx podczas dołączania wystąpienia właściwości i używaj jej tylko dla danych nieprzyrównanych bajtami lub danych, które muszą zostać zdekodowane. Dołączanie właściwości odnosi się do mapowania wystąpienia właściwości do określonej lokalizacji w procesie przechwytywania.
Analizowanie protokołów podzielonych między ramki Załóżmy, że każdy fragment protokołu jest kompletny w ramce i załóżmy, że użytkownik wywołuje narzędzie Protocol Coalesce, aby połączyć elementy w jeden protokół. Nie patrz wstecz na poprzednią ramkę podczas analizowania protokołu i unikaj próby odtworzenia protokołu podzielonego między ramkami.
Formatowanie wyświetlanych danych Wywołaj funkcję FormatPropertyInstance, aby użyć ogólnego formatera do sformatowania danych wyświetlanych w panelu szczegółów interfejsu użytkownika Monitora Sieci. Unikaj pisania niestandardowego formatowania dla danych wyświetlanych w interfejsie użytkownika. Można jednak wywołać niestandardowy formater, aby utworzyć wiersz właściwości podsumowującej dla protokołu, który analizujesz.
Korzystanie z obiektu CCAlloc Użyj obiektu CCAlloc, jeśli chcesz, aby monitor sieci przydzielał dane na podstawie przechwytywania. Monitor sieci nie określa kolejności, w jakiej ramki wywołują analizator.
Utrzymywanie analizatora bezstanowego Utrzymuj bezstanowość działania analizatora, ponieważ gdy monitor sieci analizuje przechwytywanie, nie przekazuje ramek do analizatora w określonej kolejności. Z tego powodu zaleca się, aby nie przechowywać danych globalnych.