資源簡介
EurekaLog 7.5.1.0 for delphi 10.2 Tokyo,EurekaLog支持 Tokyo,Xe 10.2。
代碼片段和文件信息
//?This?file?is?based?on?FastMM‘s?support?unit?for?C++?Builder.
#pragma?option?push
#pragma?option?-k-?-d?-vi-?-O2?-b-?-3?-a8?-pc?-RT-?-x?-xd?-r?-AT?-vG-?-vG0-?-vG1-?-vG2-?-vG3-?-vGc-?-vGt-?-vGd-
#pragma?hdrstop
#include?“EMemLeaks.hpp“
#include?“EResLeaks.hpp“
//?BCB6?support
#include?
#ifdef?__cplusplus
extern?“C“?{
#endif?//?__cplusplus
typedef?void?*?(__fastcall?*?GetMemFunc)(int?Size);
typedef?int????(__fastcall?*?FreeMemFunc)(void?*?P);
typedef?void?*?(__fastcall?*?ReallocMemFunc)(void?*?P?int?Size);
typedef?void?*?(__fastcall?*?AllocMemFunc)(unsigned?Size);
typedef?void???(_RTLENTRY?*HeapRedirect_free)??????(void?*);
typedef?void?*?(_RTLENTRY?*HeapRedirect_malloc)????(size_t);
typedef?void?*?(_RTLENTRY?*HeapRedirect_realloc)???(void?*?size_t);
typedef?void???(_RTLENTRY?*HeapRedirect_terminate)?(void);
//_________________________________________________________________________________
//?Patch?routines
#pragma?pack(push1)
typedef?struct?{
??unsigned?char?JmpInst;?//?E9
??int?Offset;
}?TRelativeJmp32?*?PRelativeJmp32;
typedef?struct?{
??unsigned?short?JmpInst;?//?FF?25
??void?*?*?DestPtr;
}?TIndirectJmp32?*?PIndirectJmp32;
#pragma?pack(pop)
bool?__fastcall?WriteMem(void?*?Location?void?*?Data?unsigned?int?DataSize)
{
??unsigned?long?OldProtect;
??
??if?(VirtualProtect(Location?DataSize?PAGE_EXECUTE_READWRITE?&OldProtect))
??{
????memmove(Location?Data?DataSize);
????FlushInstructionCache(GetCurrentProcess()?Location?sizeof(DataSize));
????VirtualProtect(Location?DataSize?OldProtect?&OldProtect);
????return?true;
??}
??else?{
????return?false;
??}
}
#define?RelativeJmp32Inst??(0xE9)
bool?__fastcall?PatchProc(void?*?OldProc?void?*?NewProc?TRelativeJmp32?*?Backup)
{
??if?(OldProc?&&?NewProc)
??{
????TRelativeJmp32?JmpData;
????JmpData.JmpInst?=?RelativeJmp32Inst;
????JmpData.Offset?=?(int)NewProc?-?((int)OldProc?+?sizeof(JmpData));
????if?(Backup)
????{
??????*Backup?=?*((PRelativeJmp32)OldProc);
????}
????return?WriteMem(OldProc?&JmpData?sizeof(JmpData));
??}
??else?{
????return?false;
??}
};
bool?__fastcall?UnPatchProc(void?*?OldProc?void?*?NewProc?TRelativeJmp32?*?Backup)
{
??if?(OldProc?&&?NewProc?&&?Backup)
??{
????int?Offset?=?(int)NewProc?-?((int)OldProc?+?sizeof(TRelativeJmp32));
????if?((((PRelativeJmp32)OldProc)->JmpInst?==?RelativeJmp32Inst)
??????&&?(((PRelativeJmp32)OldProc)->Offset?==?Offset))
????{
??????return?WriteMem(OldProc?&Backup?sizeof(*Backup));
????}
??}
??return?false;
};
#ifndef?_RTLDLL?//Not?using?Dynamic?RTL
extern?void?_terminate(int?code);
#endif?//?_RTLDLL
void?__fastcall?FinalizeModuleCodeDataRanges(void);
void?__fastcall?FinalizeHeapRedirectorStoreList(void);
void?New_terminate(int?code)
{
??FinalizeMemoryManager();
??GetCppVirtObjTypeNameFunc?=?NULL;
??FinalizeModuleCodeDataRanges();
??ExitProcess(code);??????????????
}
void?*?PatchLocat
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????10564??2016-09-05?22:43??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\Dialog.res
?????文件?????370253??2016-09-05?22:43??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\EAbout.dfm
?????文件??????10781??2016-09-05?22:43??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\EExceptionFilterEditor.dfm
?????文件???????9777??2016-09-05?22:43??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\EIDEOptions.dfm
?????文件????????326??2016-09-05?22:43??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\ELCursor.cur
?????文件??????57501??2016-11-24?19:27??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\ELDefines.inc
?????文件??????32695??2016-09-05?22:43??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\EMemLeaksBCB.cpp
?????文件?????180195??2016-09-05?22:43??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\ENagScreen.dfm
?????文件?????284969??2016-09-19?02:58??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\EOption.dfm
?????文件???????3684??2016-09-05?22:43??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\EurekaComponent.res
?????文件??????39888??2016-09-05?22:43??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\EurekaLog.res
?????文件???????5469??2016-09-05?22:43??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\EVariables.dfm
?????文件???????1971??2016-09-05?22:43??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\EWait.dfm
?????文件??????26694??2016-09-05?22:43??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\favicon.ico
?????文件???????1721??2016-09-05?22:43??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\Manifest.manifest
?????文件?????????52??2016-11-24?18:26??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\Manifest.rc
?????文件??????28768??2016-11-24?18:26??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\Manifest.res
?????文件???????1728??2016-09-05?22:43??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\ManifestMax.manifest
?????文件?????????55??2016-11-24?18:26??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\ManifestMax.rc
?????文件??????28772??2016-11-24?18:26??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\ManifestMax.res
?????文件??????10564??2016-09-05?22:43??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Common\UnicodeDialog.res
?????文件???????1829??2016-09-05?21:47??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Obj\Win32\adler32.obj
?????文件????????635??2016-09-05?21:47??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Obj\Win32\compress.obj
?????文件??????11644??2016-09-05?21:47??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Obj\Win32\crc32.obj
?????文件??????10933??2016-09-05?21:47??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Obj\Win32\deflate.obj
?????文件???????7523??2016-09-05?21:47??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Obj\Win32\infback.obj
?????文件???????2281??2016-09-05?21:47??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Obj\Win32\inffast.obj
?????文件??????12102??2016-09-05?21:47??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Obj\Win32\inflate.obj
?????文件???????2482??2016-09-05?21:47??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Obj\Win32\inftrees.obj
?????文件??????11895??2016-09-05?21:47??EurekaLog?7.5.1.0?for?RAD?Studio?10.2?Tokyo?Unofficial\Lib\Obj\Win32\trees.obj
............此處省略723個文件信息
- 上一篇:京東價格監控軟件
- 下一篇:Redis開發與運維 高清完整版
評論
共有 條評論