Можно ли с помощью компиляторов Visual Studio написать 2 функции, которые вызываются до вызова других функций и после их выполнения? В gcc вы можете сделать это с помощью __cyg_profile_func_*()
функций:
void __cyg_profile_func_enter(void *func_address, void *call_site )
__attribute__ ((no_instrument_function));
void __cyg_profile_func_exit (void *func_address, void *call_site )
__attribute__ ((no_instrument_function));
Мне нужно решение, которое работает для программного обеспечения режима ядра. Я думаю, что Microsoft Detours может помочь, но бесплатная версия только 32-битная, а мои драйверы чисто 64-битные.
Я хочу сгенерировать граф вызовов для конкретного кода.
Спасибо.