Mein Code einfach ist und schien sehr einfach zu seinKann hinzufügen, nicht 2 Zeiger
#include <cstdint>
#include <windows.h>
#define ADDR_cabalbase 0x01083A90
#define ADDR_ONat 0x35c
#define ZeroOFS 0x0
int main()
{
if ((*reinterpret_cast<PDWORD *>(ADDR_cabalbase)+*reinterpret_cast<PDWORD *>(ZeroOFS))
+ *reinterpret_cast<PDWORD *>(ADDR_ONat)
== 3){
ExitProcess(0);
}
}
Aber es gibt einen Fehler:
Error 1 error C2110: '+' : cannot add two pointers
Kann mir jemand sagen, was ich falsch mache. Ich möchte nur eine Delphi-Funktion in C++
procedure TWanda.Timer5Timer(Sender: TObject);
begin
try
if PDWORD(PDWORD(PWORD(cabalbase)^+$0)^+ONat)^ = 3 then
begin
timer9.Enabled:= true;
end;
except {ignore errors} end;
end;
Sie können nicht hinzufügen Zeiger auf Zeiger, der keinen Sinn macht, ist nicht klar, was dieser Code in Delphi tut – Slava
Ein Zeiger enthält den Speicherort einer Adresse im Speicher, ähnlich einem Umschlag enthält eine Postanschrift. Das Hinzufügen von Postadressen ist nicht sinnvoll, da das Hinzufügen von Zeigern keinen Sinn ergibt. Sie können einem Zeiger einen * Offset * hinzufügen. –
Bitte stellen Sie keine Bilder von Code in Ihre Frage. Fügen Sie den Code einfach als Text ein. – Johan