我通过函数偏移量在外部进程中Hook函数。到目前为止,这对于我Hook的函数来说效果很好——但是我发现一个“debugLog(char...)”函数仍然存在于二进制文件中但不进行任何打印——它看起来像这样debugMessageprocnear;xoreax,eax;LogicalExclusiveORretn;ReturnNearfromProceduredebugMessageendp它是这样称呼的pushoffsetdebugString;"Thisisadebugmessage"...calldebugMessage;CallProcedure现在调试消息显然已被禁用,我想连接
DebugUtil.h#ifndefDEBUG_UTIL_H#defineDEBUG_UTIL_H#includeintDebugMessage(constchar*message){constintMAX_CHARS=1023;staticchars_buffer[MAX_CHARS+1];return0;}#endif当我尝试运行它时,我得到了这个错误:Terrain.obj:errorLNK2005:"int__cdeclDebugMessage(charconst*)"(?DebugMessage@@YAHPBD@Z)alreadydefinedinLoodus.objRend
DebugUtil.h#ifndefDEBUG_UTIL_H#defineDEBUG_UTIL_H#includeintDebugMessage(constchar*message){constintMAX_CHARS=1023;staticchars_buffer[MAX_CHARS+1];return0;}#endif当我尝试运行它时,我得到了这个错误:Terrain.obj:errorLNK2005:"int__cdeclDebugMessage(charconst*)"(?DebugMessage@@YAHPBD@Z)alreadydefinedinLoodus.objRend