Variablen auf Änderungen überwachen

Anfängerfragen zum Programmieren mit PureBasic.
¯\_(ツ)_/¯
Beiträge: 141
Registriert: 18.08.2017 09:35

Variablen auf Änderungen überwachen

Beitrag von ¯\_(ツ)_/¯ »

Ich möchte meine eigenen Variablen automatisch auf Veränderungen überwachen. Ich könnte in einem Thread
ene Schleife mit Delay machen und den alten mit dem neuen Wert vergleichen aber gibt es auch ein Event
oder BindFunktion? Sowas wie BindEvent(#PB_VariableChange, @Callback())
:?:
Bild
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Re: Variablen auf Änderungen überwachen

Beitrag von Fluid Byte »

Etwas konkreter, "Variablen auf Änderungen überwachen" ist Dünnschiss.
Windows 10 Pro, 64-Bit / Outtakes | Derek
ccode_new
Beiträge: 1214
Registriert: 27.11.2016 18:13
Wohnort: Erzgebirge

Re: Variablen auf Änderungen überwachen

Beitrag von ccode_new »

Fluid Byte hat geschrieben: Etwas konkreter, "Variablen auf Änderungen überwachen" ist Dünnschiss.
Wieso ?
¯\_(ツ)_/¯ hat geschrieben:Ich möchte meine eigenen Variablen automatisch auf Veränderungen überwachen. Ich könnte in einem Thread
ene Schleife mit Delay machen und den alten mit dem neuen Wert vergleichen aber gibt es auch ein Event
oder BindFunktion? Sowas wie BindEvent(#PB_VariableChange, @Callback())
Dafür gibt es den Debugger.
Wähle: Menü->Compiler->Compiler-Optionen->Kompilieren/Starten->"Verwende ausgewählten Debugger:"->Eigenständiger Debugger

Oder: (Festeinstellung)
Menü->Datei->Einstellungen->Debugger->Debugger-Typ auswählen.

Damit hast du tolle Überwachungsmöglichkeiten.

Oder meinst du etwas Anderes mit "Ich möchte meine eigenen Variablen automatisch auf Veränderungen überwachen." ?
Betriebssysteme: div. Windows, Linux, Unix - Systeme

no Keyboard, press any key
no mouse, you need a cat
Benutzeravatar
HeX0R
Beiträge: 2954
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win10 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2
Kontaktdaten:

Re: Variablen auf Änderungen überwachen

Beitrag von HeX0R »

Wenn man alle seine derzeitigen Anfragen betrachtet, sieht man recht deutlich, was das Ziel ist.
Ein Tipp von mir:
Stecke lieber mehr Energie in die Bedienbarkeit Deiner Applikation (oder in die Spielidee Deines Spiels), gecrackt wird nämlich auch nur, was richtig gut ist.
Benutzeravatar
Imhotheb
Beiträge: 192
Registriert: 10.10.2014 13:14
Computerausstattung: Intel 8086, 640 KB RAM, Hercules Video Adapter, 2 x 5 1/4" 360kb Floppy, MS-DOS 3
Wohnort: Wolfenbüttel

Re: Variablen auf Änderungen überwachen

Beitrag von Imhotheb »

Eine einfache Möglichkeit ist auch das doppelte Speichern. Z.B mit einem Hash. Allerdings verbraucht das natürlich auch Ressourcen!
weil einfach einfach einfach ist ... mach' ich es anders
¯\_(ツ)_/¯
Beiträge: 141
Registriert: 18.08.2017 09:35

Re: Variablen auf Änderungen überwachen

Beitrag von ¯\_(ツ)_/¯ »

Tut mir wirklich sehr leid, dass ich mich ungenau ausgedrückt habe. Sorry :( Ich versuche es so zu erklären...
Ich habe ein kleines Spiel und möchte dieses vor Crackern sichererer machen. Dazu zählt auch das überwachen
von meinen eigenen Variablen aber nicht im Debugger sondern intern- Mein Programm soll selbst feststellen können
welche Variablen geändert wurden. Eine Art BindVariableEvent. Sobald sich eine Variable von einer meiner Funktionen
ändert dann gibt es ein Event und mein Programm weiß es gibt eine Lösung der Variable X mit dem neuen Wert Y und
soll prüfen ob das gewollt war. Ob das gewollt war ist kein Problem weil mein Programm weiß ob die Änderung von
einer meiner Funktionen stammt aber wenn ein externes Programm von außen einen Wert ändert dann kann mein Programm
feststellen dass keine meiner Funktionen aktiv waren und weiß dass es eine illegale Änderung war. Nur dieses Event
brauche ich. Ich brauche sowas:

Code: Alles auswählen

Procedure Callback()
  Debug "Variable wurde geändert: " + EventVariable()
EndProcedure

BindEvent(#PB_VariableChange, @Callback())

meineVariable = 5

;ab hier wird mein Callback von BindEvent automatisch aufgerufen
Ich hoffe ich habe nicht wieder Dünnschiss produziert.
Bild
Benutzeravatar
Kiffi
Beiträge: 10621
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Variablen auf Änderungen überwachen

Beitrag von Kiffi »

<OT>
¯\_(ツ)_/¯ hat geschrieben:Ich habe ein kleines Spiel und möchte dieses vor Crackern sichererer machen.
das schliesse ich mich HeX0Rs Meinung an:
HeX0R hat geschrieben:Stecke lieber mehr Energie in die Bedienbarkeit Deiner Applikation (oder in die Spielidee Deines Spiels)
selbst die großen Spielefirmen ziehen im Kampf gegen Cracker immer den Kürzeren.

just my two cents... Bild

</OT>

Grüße ... Peter
Hygge
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Variablen auf Änderungen überwachen

Beitrag von RSBasic »

+1
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Re: Variablen auf Änderungen überwachen

Beitrag von Fluid Byte »

Verstehe, das vergiss mal gleich wieder. Habe mich damit vor ein paar Jahren ebenfalls beschäftigt. Alles wird gecrackt, ausnahmslos. Wenn ein DRM ein paar Monate hält gilt das in der Branche als "Erfolg". Denuvo wurde als der große Piraten-Killer von Ubisoft verkauft und ist bereits nach drei Monaten platt gemacht:

https://kotaku.com/after-three-months-p ... 1822696106

Assassin's Creed Origins ist zugeschissen mit 3 Ebenen von DRM: Steam, Uplay und Denuvo. Die Piraten lachen sich den Arsch ab und der ehrliche Kunde wird mit diesem Abfall belästigt der auch noch stark Performance kostet.

Es gibt nur eine Regel die lebenswichtig ist, mach es den ehrlichen Spielern so leicht wie nur menschenmöglich dein Produkt zu kaufen und zu nutzen. Nichts anderes zählt. Ich habe früher selbst das meiste von PirateBay gezogen aber langfristig alles auf Steam nachgekauft. Gerade Entwickler von Indie games wie Shovel Knight oder SUPERHOT verdienen jeden Cent.
Windows 10 Pro, 64-Bit / Outtakes | Derek
Jan125
Beiträge: 31
Registriert: 23.06.2013 06:26
Computerausstattung: Nicht lachen. Atom Z3775, 2GiB RAM, Win8.1.

Re: Variablen auf Änderungen überwachen

Beitrag von Jan125 »

... und ich hab einfach den Entwickler direkt angemailt, und ihm via PayPal den 1.5fachen Preis gesteckt - und gleich 2 Keys erhalten. :>

On-Topic: Eventuell eine SetLong()-Prozedur mit Static Map, wo alle Speicheradressen bei jedem Aufruf rotiert werden... Ob das Sinn macht ist 'ne andere Frage.
Wer braucht schon Unicode? PB5.24LTS
Antworten