Реферат: API Spying

{

std::string name; // Имяфункции

int count; // Количество вызовов

};

// Вектор, хранящий всю статистику вообще

std::vector<func_descrition> functions;

#define WM_CALLED (WM_USER + 1)

#define WM_CANNOTHOOK (WM_USER + 2)

// Процедура окна, которому внедрённая dll посылает данные

LRESULT CALLBACK WndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)

{

switch (uMsg)

{

// Вызвана GetProcAddress

case WM_COPYDATA:

{

// Получаемуказательнапереданнуюструктуру

COPYDATASTRUCT* pcd = reinterpret_cast<COPYDATASTRUCT*>(lParam);

// Получаемимя

char* str = (char*)pcd->lpData;

printf("New function: %s\n", str);

// Новаяфункция

func_descrition f;

f.count = 0;

f.name = str;

// Добавляемеёввектор

functions.push_back(f);

}

// Возвращаемномер

К-во Просмотров: 1000
Бесплатно скачать Реферат: API Spying