4 Star 9 Fork 4

LonelyPascal工作室/DELPHI x96dbg Plugins SDK
暂停

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
_scriptapi_bookmark.pas 2.74 KB
一键复制 编辑 原始数据 按行查看 历史
unit _scriptapi_bookmark;
{
Ported form _scriptapi_bookmark.h x64 and x32 to Unit Delphi by Lonely
FixCode:https://gitee.com/suxuss/DELPHI-x96dbg-Plugins-SDK
}
interface
uses
Winapi.Windows,_plugins_type,bridgemain,bridgelist,_plugins;
{$I dbg.inc}
type
BookmarkInfo = packed record
fmod:array [0..MAX_MODULE_SIZE - 1] of AChar;
rva:duint;
manual:Boolean;
end;
PBookmarkInfo = ^BookmarkInfo;
{$ifdef win64}
{SCRIPT_EXPORT bool} function FSet(addr:duint;manual:Boolean = false):Boolean; cdecl; external x32DBG name '?Set@Bookmark@Script@@YA_N_K_N@Z';
{SCRIPT_EXPORT bool} function FSet2(const info:PBookmarkInfo):Boolean; cdecl; external x32DBG name '?Set@Bookmark@Script@@YA_NPEBUBookmarkInfo@12@@Z';
{SCRIPT_EXPORT bool} function Get(addr:duint):Boolean; cdecl; external x32DBG name '?Get@Bookmark@Script@@YA_N_K@Z';
{SCRIPT_EXPORT bool} function GetInfo(addr:duint;info:PBookmarkInfo):Boolean; cdecl; external x32DBG name '?GetInfo@Bookmark@Script@@YA_N_KPEAUBookmarkInfo@12@@Z';
{SCRIPT_EXPORT bool} function Delete(addr:duint):Boolean; cdecl; external x32DBG name '?Delete@Bookmark@Script@@YA_N_K@Z';
{SCRIPT_EXPORT void} procedure DeleteRange(start:duint;Fend:duint); cdecl; external x32DBG name '?DeleteRange@Bookmark@Script@@YAX_K0@Z';
{SCRIPT_EXPORT void} procedure Clear(); cdecl; external x32DBG name '?Clear@Bookmark@Script@@YAXXZ';
{SCRIPT_EXPORT bool} function GetList(list:PBookmarkInfo):Boolean; cdecl; external x32DBG name '?GetList@Bookmark@Script@@YA_NPEAUListInfo@@@Z'; //caller has the responsibility to free the list
{$else}
{SCRIPT_EXPORT bool} function FSet(addr:duint;manual:Boolean = false):Boolean; cdecl; external x32DBG name '?Set@Bookmark@Script@@YA_NK_N@Z';
{SCRIPT_EXPORT bool} function FSet2(const info:PBookmarkInfo):Boolean; cdecl; external x32DBG name '?Set@Bookmark@Script@@YA_NPBUBookmarkInfo@12@@Z';
{SCRIPT_EXPORT bool} function Get(addr:duint):Boolean; cdecl; external x32DBG name '?Get@Bookmark@Script@@YA_NK@Z';
{SCRIPT_EXPORT bool} function GetInfo(addr:duint;info:PBookmarkInfo):Boolean; cdecl; external x32DBG name '?GetInfo@Bookmark@Script@@YA_NKPAUBookmarkInfo@12@@Z';
{SCRIPT_EXPORT bool} function Delete(addr:duint):Boolean; cdecl; external x32DBG name '?Delete@Bookmark@Script@@YA_NK@Z';
{SCRIPT_EXPORT void} procedure DeleteRange(start:duint;Fend:duint); cdecl; external x32DBG name '?DeleteRange@Bookmark@Script@@YAXKK@Z';
{SCRIPT_EXPORT void} procedure Clear(); cdecl; external x32DBG name '?Clear@Bookmark@Script@@YAXXZ';
{SCRIPT_EXPORT bool} function GetList(list:PBookmarkInfo):Boolean; cdecl; external x32DBG name '?GetList@Bookmark@Script@@YA_NPAUListInfo@@@Z'; //caller has the responsibility to free the list
{$endif}
implementation
end.
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Delphi
1
https://gitee.com/suxuss/DELPHI-x96dbg-Plugins-SDK.git
git@gitee.com:suxuss/DELPHI-x96dbg-Plugins-SDK.git
suxuss
DELPHI-x96dbg-Plugins-SDK
DELPHI x96dbg Plugins SDK
master

搜索帮助