咦!怎么只有一个标签页面被动态生成了?
本帖最后由 冥界3大法王 于 2023-5-13 10:31 编辑@DEATHTOUCH
看图,上代码!{:301_974:}帮助我修改一下。感觉还差点。{:301_986:}
断点小全.txt
常用断点
0.rtcFileLen(VB自效验)
0.UnhandledExceptionFilter(判断进程是否附加调试器)
0.SetUnhandledExceptionFilter(抛出异常来判断是否被调试)
0.FindFirstFileA(查找文件)
对话框
1.MessageBoxExA(创建、显示和操作消息框。消息框包含应用程序定义的消息和标题,以及预定义图标和按钮的任意组合)
1.MessageBoxExW(创建、显示和操作消息框。消息框包含应用程序定义的消息和标题,以及预定义图标和按钮的任意组合)
1.MessageBoxIndirect(消息框)
procedure TForm5.Button2Click(Sender: TObject);
var
sFile: TStrings;
r: Integer;
NewTab: TTabSheet;
frame: TFrame6;
matchs: TMatchCollection;
match: TMatch;
a1: string;
r1: Integer;
begin
sFile := TStringList.Create;
sFile.LoadFromFile('X:\断点小全.txt');
for r := 0 to sFile.Count - 1 do
begin
//ShowMessage((sFile)); //这是读取到的单行的内容
if POS('[', sFile) > 0 then
begin
NewTab := TTabSheet.Create(PageControl1);
NewTab.PageControl := PageControl1;
NewTab.Caption := (sFile);
frame := TFrame6.Create(NewTab);
frame.Parent := NewTab;
frame.Align := alClient;
//==>从这加的添加CheckListBox1项目的代码段
begin
sFile := TStringList.Create;
sFile.LoadFromFile('X:\断点小全.txt');
for r1 := 0 to sFile.Count - 1 do
begin
if TRegEx.IsMatch(sFile, '^' + IntToStr(PageControl1.TabIndex) + '\..+\)$') then
begin
matchs := TRegEx.Matches(sFile, '\..+\)$');
for match in matchs do
begin
a1 := match.Value;
delete(a1, 1, 1);
frame.CheckListBox1.Items.Add(a1 + #13#10);
end;
end
end;
sFile.Free;
end;
//到这结束
end;
end;
sFile.Free;
end;
问题2: frame这种东西 会不会被覆盖? 不是共用的关系? 不会delphi。{:301_998:}法王正在考虑做成这种形式的插件?
https://www.52pojie.cn/forum.php?mod=viewthread&tid=1640335 董督秀 发表于 2023-5-13 10:25
不会delphi。法王正在考虑做成这种形式的插件?
https://www.52pojie.cn/forum.php?mod=vie ...
@董督秀都你害的我多掉白头发,你得请我喝脑白金。{:301_976:} 本帖最后由 冥界3大法王 于 2023-5-13 10:40 编辑
把倒数第2个 sFile.Free; 删除就生成了
但新的问题来了
CheckListBox1的内容被覆盖了,果然担心的事情发生了。
而且 生成过程 超级的卡顿 冥界3大法王 发表于 2023-5-13 10:26
@董督秀都你害的我多掉白头发,你得请我喝脑白金。
https://www.helloimg.com/images/2023/05/13/oxVTMu.png
这是比较全一点的版本,此OD插件是他人2006年发布的,为delphi编译,估计看雪里的原作者也没有源码了。
我收集了一个断点比较全的成品版本,希望有所帮助。
https://t.wss.ink/f/b73itg6awzn 复制链接到浏览器打开 其实倒也没必要这样,尤其是文本的格式,比如说
常用断点
0.XXXX
对话框
1.XXX
可以改一个便于读取的格式
比如用ini格式
[常用断点]
XXX
YYY
下面这段代码可以参考一下下,很简陋,就展示一下基本方法,具体细节需要完善。
procedure TForm1.FormCreate(Sender:TObject);
var
sl:TStringList;
s:String;
tab:TTabSheet;
lb:TListBox;
begin
sl:=TStringList.Create;
try
sl.LoadFromFile('xxx');
for s in sl do
begin
if Length(s) = 0 then
Continue;
if s = '[' then // 这里改成你想要的条件判断
begin
tab:=TTabSheet.Create(PageControl1);
tab.PageControl:=PageControl1;
tab.Caption:=s;
lb:=TListBox.Create(tab); // 我这里简单用了个ListBox
lb.Align:=alClient;
lb.Parent:=tab;
end else // 条件判断可以改一下
begin
if Assigned(lb) then
lb.AddItem(s,nil);
end;
end;
finally
sl.Free;
end;
end; DEATHTOUCH 发表于 2023-5-13 11:03
其实倒也没必要这样,尤其是文本的格式,比如说
常用断点
0.XXXX
@DEATHTOUCH
CheckListBox 被覆盖的问题咋 解决呢?
又改了一下Frame也不需要了。
procedure TForm5.Button2Click(Sender: TObject);
var
sFile: TStrings;
r: Integer;
NewTab: TTabSheet;
matchs: TMatchCollection;
match: TMatch;
a1: string;
r1: Integer;
CheckListBoxN: TCheckListBox;
begin
sFile := TStringList.Create;
sFile.LoadFromFile('X:\PYG教学\0.大白补丁使用从入门到精通\0.调试过程中所必须的工具Ollydbg或x36dbg\x64dbg自修改比较牛逼版★★★★★\x32\plugins\API断点小全.txt');
for r := 0 to sFile.Count - 1 do
begin
//ShowMessage((sFile)); //这是读取到的单行的内容
if POS('[', sFile) > 0 then
begin
NewTab := TTabSheet.Create(PageControl1);
NewTab.PageControl := PageControl1;
NewTab.Caption := (sFile);
CheckListBoxN := TCheckListBox.Create(NewTab);
CheckListBoxN.Parent := NewTab;
CheckListBoxN.Align := alClient;
//==>从这加的添加CheckListBox1项目的代码段
begin
sFile := TStringList.Create;
sFile.LoadFromFile('X:\PYG教学\0.大白补丁使用从入门到精通\0.调试过程中所必须的工具Ollydbg或x36dbg\x64dbg自修改比较牛逼版★★★★★\x32\plugins\API断点小全.txt');
for r1 := 0 to sFile.Count - 1 do
begin
if TRegEx.IsMatch(sFile, '^' + IntToStr(PageControl1.TabIndex) + '\..+\)$') then
begin
matchs := TRegEx.Matches(sFile, '\..+\)$');
for match in matchs do
begin
a1 := match.Value;
delete(a1, 1, 1);
CheckListBoxN.Items.Add(a1 + #13#10);
end;
end
end;
end;
//到这结束
end;
end;
sFile.Free;
end;
我好像明白了。。。有几个坑儿,种几颗豆。。。不告诉人家。。。岂能不种一个坑儿里?{:301_988:} 冥界3大法王 发表于 2023-5-13 13:25
我好像明白了。。。有几个坑儿,种几颗豆。。。不告诉人家。。。岂能不种一个坑儿里?
期待x96成品插件。{:17_1068:}
页:
[1]
2