Скрипт для чекбокса:
procedure TForm1.chk1Click(Sender: TObject);
begin
if chk1.Checked then
begin
Cheat1 := AOBScan(GameHandle, '66 0F D6 8D 58 FF FF FF C7 85 60 FF FF', FullFlags, $0,
$5FFFFFFF);
if Cheat1.WriteBytes('66 0F D6 8D 58 FF FF FF', -1, 0) then
begin
Cheat1.WriteBytes('90 90 90 90 90 90 90 90', -1, 0);
end
else
ShowMessage('Не удалось активировать!');
end;
if chk1.Checked = False then
begin
Cheat1.WriteBytes('66 0F D6 8D 58 FF FF FF', -1, 0);
end;
end;
ты ошибок наделал. правильнее будет так:
procedure TMainForm.CheckBox1Click(Sender: TObject);
begin
if CheckBox1.Checked = True then
Cheat1 := AOBScan(GameHandle, 'Сигнатура поиска', FullFlags, $0, $5FFFFFFF);
if Cheat1.Count > 0 then begin
if Cheat1.WriteBytes('Сигнатура включения', -1, 0) then
begin
end;
end
else
MessageDlg('Ошибка :(', mtError, [mbOK], 0);
if CheckBox1.Checked = False then
Cheat1.WriteBytes('Сигнатура выключения', -1, 0);
а лучше будет так
var
Search: TMemorySearch;
begin
if sCheckBox1.Checked then begin
FreeAndNil(SearchResult);
if SearchEngine <> nil then
begin
Search := SearchEngine.NewSearch('Искать');
try
Search.OPT_READPAGE_EXECUTEREADWRITE := True;
Search.OPT_READPAGE_READWRITE := True;
Search.OPT_READPAGE_EXECUTEREAD := True;
Search.OPT_READPAGE_READONLY := True;
if Search.Next then begin
SearchResult := Search.GetFindedAddressObject;
SearchResult.WriteHEX(0, 'Заменить');
end
else
finally
Search.Free;
end;
end
else
end
else
if sCheckBox1.Checked = False then begin
if SearchResult <> nil then
begin
if not SearchResult.WriteHEX(0, 'Востоновить') then
end;
end;