Esiste comunque un monitoraggio delle chiamate API sul sistema in C?(Windows) Chiamate API di monitoraggio in C
risposta
Anche se non è gratuito, è consigliabile esaminare API Monitor. Ha la possibilità di accedere ai file XML, quindi è possibile determinare le API che sono state chiamate leggendo questo file nell'applicazione scelta.
Un altro strumento da osservare è ProcessMonitor di Mark Russinovich. Tuttavia, non controlla tutte le chiamate API.
Il pacchetto Debugging Tools for Windows include un'estensione del debugger denominata logexts.dll che può registrare chiamate di funzioni API Win32. Ha anche un programma front-end separato chiamato logger.exe per quando non si desidera collegare il debugger.
Su una base funzione per funzione, è possibile utilizzare Microsoft Detours. Intercetta le chiamate API riscrivendo i punti di ingresso della funzione per puntare al codice.
API Monitoring Tools ha un elenco completo di strumenti di monitoraggio API. Ho usato PIX per monitorare le chiamate DirectX. Dovresti provare a Rohitab's Api Monitor.
E utilizza un driver di dispositivo personalizzato. – aib
Esatto, piuttosto che iniettare una DLL nel processo perché introduce meno problemi bizzarri ed è meno invasiva del processo da ispezionare. Significa che hai bisogno di più dei normali privilegi dell'utente per eseguirlo, comunque. – RBerteig