前两天写了一个HOOK微软的加密函数然后打Log的Detours的例子,还是不够直观,这次举个简单的例子,其实完全可以应用在不加密的游戏游戏数据分析上,当然当前不加密明文传输的少之又少,此处只为学习方法。
首先在VC下建立一个DLL工程,不需要使用MFC DLL,因为不需要那个框架里面的东西。
然后新增一个源文件,写入相关代码
#include <stdio.h>
#include <winsock2.h>
#include <windows.h>
#include "detours.h"
#pragma comment( lib , "ws2_32.lib")
#pragma comment( lib , "detours.lib")
#pragma comment( lib , "detoured.lib")
#ifdef _MANAGED
#pragma managed(push, off)
#endif
int (WINAPI *pSend)(SOCKET s, const char* buf, int len, int flags) = send;
int WINAPI SendEx(SOCKET s, const char* buf, int len, int flags);
FILE *pLogFile;
int WINAPI SendEx(SOCKET s, const char* buf, int len, int flags)
{
pLogFile = fopen("c:\\SendLog.txt", "a+")