Value eines Spiels Auslesen [Frage]

02/20/2012 20:53 Waller66#1
Hallo , ich bin ein totaler Autoit Anfänger .
Ich will nun den Wert eines Spiel auslesen , erstmal den Score von Solitaire :)
wie geht das ? wie kann ich den aktuellen wert mir aus geben lassen ?

und noch eine Frage wie kann ich einen wert dauerhaft freezen ?
einfach _MemoryWrite($Adresse, $Open, $Punkte, 'dword')

immer in ne while xD ? oder wie ?


ich bitte um eure hilfe , danke schön
02/20/2012 21:02 K1ramoX#2
Das wird mit _MemoryRead nicht funktionieren da Solitär hauptsächlich dynamische Adressen hat, sprich nach einem Neustart sind sie anders. Jetzt gibt es 2 Möglichkeiten, such dir den Pointer (das wird sowohl die einfachste sein) oder du schreibst dir eine UDF (oder fragst nach einer) die nach einem bestimmten AoB (Array of Byte) sucht und dir dann die Adresse zurückgibt. Beides hat sowohl Vor- als auch Nachteile. Wobei ich Pointer nutzen würde xD Und wie du das dann ausliest ist deine Entscheidung. Entweder per Button, Schleife, AdlibRegister Befehl und und und ;o
02/20/2012 21:03 jacky919#3
Quote:
Originally Posted by Waller66 View Post
wie kann ich den aktuellen wert mir aus geben lassen ?
Wenn du _MemoryWrite hast, wirst du wohl auch das Gegnstück _MemoryRead haben.

Quote:
Originally Posted by Waller66
und noch eine Frage wie kann ich einen wert dauerhaft freezen ?
einfach _MemoryWrite($Adresse, $Open, $Punkte, 'dword')

immer in ne while xD ? oder wie ?
Ja, so würde es funktionieren.
02/20/2012 21:08 Waller66#4
danke jacky919 , guter beitrag


Applecode , natürlich benutze ich den pointer von solitair ^^ wtf
02/20/2012 21:11 K1ramoX#5
Wenn du Pointer nutzen tust musst du _MemoryPointerRead und _MemoryPointerWrite nutzen wenn du mit der NomadMemory.au3 arbeitest ;o
02/20/2012 21:23 jacky919#6
Quote:
Originally Posted by Applecode View Post
Wenn du Pointer nutzen tust musst du _MemoryPointerRead und _MemoryPointerWrite nutzen wenn du mit der NomadMemory.au3 arbeitest ;o
Nein...
02/20/2012 21:35 K1ramoX#7
Wieso nicht?
02/20/2012 21:40 jacky919#8
Mit _MemoryPointerRead erspart man sich etwas Arbeit, aber man kann denselben Effekt auch anders herbei führen.
02/20/2012 21:42 K1ramoX#9
Stimmt aber warum umständlich wenn es einfach geht. Sowas ist absolut Wurst solang es nicht das Endergebnis beeinflusst.
02/20/2012 21:45 jacky919#10
Wenn du jedoch sehr viele Addressen in jedem Durchlauf beschreiben willst und du jedes mal aufs neue die Endaddresse berechnen musst, kann sich das stark auf die Belastung der CPU oder auf die Zeit auswirken.
02/20/2012 21:48 K1ramoX#11
Dann schon aber wenn die Rede von Solitair ist wird die Aussage unrelevant ;o
02/20/2012 21:53 jacky919#12
Quote:
Originally Posted by Applecode View Post
Dann schon aber wenn die Rede von Solitair ist wird die Aussage unrelevant ;o
Ich habe mich nur auf deinen letzten Post bezogen:
Quote:
Originally Posted by Applecode
Sowas ist absolut Wurst solang es nicht das Endergebnis beeinflusst.
Weil eben in dem genannten Fall nicht Wurst ist. Auf Solitär bezogen macht dies natürlich keinen Unterschied, solange man nur eine Addresse beschreibt. Je mehr es werden, desto mehr ist von _MemoryPointerWrite ab zu raten.
02/20/2012 21:59 K1ramoX#13
Gebe ich dir vollkommen Recht.

Um nochmal zum TE zurückzukommen, sind deine Fragen alle geklärt?
02/20/2012 22:34 Waller66#14
hat sich geklärt danke viel mals