|
You last visited: Today at 10:13
Advertisement
_memoryread mit 64bit programmen geht nicht! - winapi - profi - frage
Discussion on _memoryread mit 64bit programmen geht nicht! - winapi - profi - frage within the AutoIt forum part of the Coders Den category.
07/24/2011, 12:42
|
#16
|
elite*gold: 0
Join Date: Jul 2011
Posts: 13
Received Thanks: 0
|
@all
erstmal herzlichsten dank für den hilfseinsatz und die bemühungen die ihr hier ohne gegenleistung aufbringt! tolle community! vielen vielen dank!
@u-coRe
natürlich ist das teil in 64bit kompiliert (sieht man überigens auch am source)
natürlich wende ich es auf eine native 64 bit applikation an (minsweeper unter 64bit ist nämlich eine)
und natürlich spreche ich von win7 64bit und nicht 32bit.
@all
leider funktioniert es bei mir mit dem auslesen nicht, ohne das ich die gründe kenne.
ob wohl ich permanent adminrechte habe, meine UAC ausgestellt ist, ich keine sicherheits-software drauf habe ...etc liefert KillerDeluxe sein script bei mir auch
nicht das was in cheat engine angezeigt wird sondern nur nullen.
ich habe keine ahnung warum.
evtl weiss noch jemand woran es liegen könnte, das es bei mir nicht rennt !?
weiterhin würde mich die frage interessieren (da ich meine scripte nicht jedes mal umschreiben möchte für 64 und 32 bit kompilierung) ob "int_prt" nicht doch das richtige ist... denn so wie ich die info verstehe soll dieser datentyp je nach kompilierung 32bit = int und 64bit = prt einsetzten... kann das jemand bestätigen ?
|
|
|
07/24/2011, 12:56
|
#17
|
elite*gold: 1826
Join Date: Mar 2009
Posts: 4,310
Received Thanks: 6,287
|
int_ptr klingt für mich wie int pointer, also wie int*. sprich ein zeiger auf nen integer.. keine ahnung als was zanden das definiert ;>
|
|
|
07/24/2011, 13:42
|
#18
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
ptr steht für pointer....
unter 64bit systemen wird ptr automatisch als 8byte pointer genutzt.
selbiges gilt auch für handles, welche man als hwnd definieren kann.
deshalb sollte man handles immer als hwnd, und adressen (pointer) immer als ptr definieren, für die restlichen werte hingegen, nimmt man im normalfall immer die üblichen typen-deklarationen (int, long, float, double)
|
|
|
07/27/2011, 11:25
|
#19
|
elite*gold: 0
Join Date: Jul 2011
Posts: 13
Received Thanks: 0
|
so, nach einigem hin und herprobieren melde ich mich mal zurück, um zumindest diejenigen die hier nochmal lesen, da sie ein ähnliches problem habe, etwas aufzuklären. als erstes:... ich kann in keinster weise nachvollziehen das killerdeluxe die bytes an der adresse auslesen konnte. denn wie es scheint, handelt es sich bei meinem "fehler" um ein zugriffsproblem... die ursache liegt wohl darin, dass ich zwar die rechte für den prozessraum zu scheinen habe. aber die von mir hier im beispiel angegebene adresse liegt wohl außerhalb des geöffneten prozesses (minesweeper.exe) .... <vermutung> in meinem beispiel war es eine adresse, die ich beim scannen mit cheat engine fand... und cheat engine scannt wohl den gesammten speicher, (wohl auch wenn man nur einen prozess geöffnet hat!?). der wert gehörte dann wohl zu irgendwas anderem....</vermutung> das ist zumindest meine erklärung, warum es bei mir nicht klappt... (kann aber auch falsch sein  ) denn im speicherbereich des ausführbaren codes kann ich problemlos schreiben/lesen. na ja, ich habe zwar jetzt alles umgeschrieben, denn auch das rechnen mir großen adressen/hexwerten ist in autoit ein problem, zumindest wenn die größe 32bit übersteigt...
|
|
|
07/27/2011, 17:36
|
#20
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
willst du mit hexwerten größer als 32bit rechnen, kannst du sie entweder vorher umrechnen in long zahlen, oder du definierst dir selbst operationen über hex zahlen.
Edit:
hier ein beispiel wie man sich addition über hexzahlen definieren könnte:
Code:
$hex1 = "0x1234567890"
$hex2 = "0xFFFFFFFFFF"
ConsoleWrite(HexAddition($hex1, $hex2)&@CRLF)
Func HexAddition($hex1, $hex2, $ergebnis='', $uebertrag='0')
$hex1 = StringReplace($hex1, '0x', '')
$hex2 = StringReplace($hex2, '0x', '')
If $hex1='' And $hex2='' Then Return '0x'&$uebertrag&$ergebnis
Local $current = Hex(('0x'&StringRight($hex1,1))+('0x'&StringRight($hex2,1))+('0x'&$uebertrag),2)
Return HexAddition(StringTrimRight($hex1,1), StringTrimRight($hex2,1), StringRight($current,1)&$ergebnis, StringLeft($current,1))
EndFunc
|
|
|
07/28/2011, 01:14
|
#21
|
elite*gold: 0
Join Date: Jul 2011
Posts: 13
Received Thanks: 0
|
oh, das geht ja einfach ....  ich hatte in dezimal gewandelt, dann gerechnet und im anschluß wieder zurück.
|
|
|
07/28/2011, 03:20
|
#22
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
der vorteil an dieser art definition, über stringfunktionen ist, das du beliebig große werte zur rechnung nutzen kannst =)
selbst wenn deine hex strings jeweils 100 zeichen lang sind, gibt es hier keine probleme. beim rechnen hingegehn stößt man irgendwann immer auf ein limit =)
diese art von definition (einfache mathematik) könnte man sich auch problemlos für dezimalzahlen oder binärzahlen aufbauen =)
|
|
|
 |
|
Similar Threads
|
[Frage]Banword geht nicht
09/12/2010 - Metin2 Private Server - 4 Replies
Hallo com,
Da ich einige GM codes (bannen) wollte hab ich auch ein TuT gefunden. Man musste einfach in die DB bei Banword das belibige GM Value einfügen z.b /stun /kill /dc ...
Aber leider funktioniert das bei mir nicht. Habe auch InGame schon /reload gemacht. Was mache ich falsch?
Und kann man bei dem Banword auch einfügen das manche items man nicht rufen kann? z.b /i und die vlaue eintragen`?
Ich Hoffe jemand kann mir helfen =)
|
Alle nicht gebrauchte Programmen schließen?
06/11/2010 - Technical Support - 9 Replies
Hey,
wie man der Überschrift schon entnehmen kann brauche ich ein Programm was mir meine Festplatte trotz laufender Programme formatiert, ich möchte den Pc komplett Formatieren das wirklich alles weg ist auch Windows ! Habe keine Recovery Cd aber der ist eh halt und ich will ein anderen Betriebssystem installieren!
MfG
|
[FRAGE]Filezilla geht nicht
02/06/2010 - Metin2 Private Server - 0 Replies
Tag, wie oben gesagt geht filezilla nicht das steht immer "kritischer fehler"
|
[Frage] Einloggen geht nicht?!
06/24/2009 - Metin2 Private Server - 5 Replies
Ich hab hier schon unzählige Threads gelesen, aber kam nie was bei raus oO
Undzwar hab ich mich gestern Abend um 10:45 im SD2 ausgeloggt..
Immer wenn ich mich jetzt einloggen will bleibt der beim Einloggbild stehen ( DU WIRST MIT DEM SERVER VERBUNDEN)
Selbst nach 1h passiert nix?!
Was kann ich tun?
|
[C++ newbie] WinApi gui frage
04/14/2009 - C/C++ - 7 Replies
HI leute,
seit vorgestern habe ich angefangen mich fest mit c++ zu beschäftigen. Mein Ziel ist ein CHARM oder wie das heißt halt bei Multiplayern Models hervorheben. Beispiel wie man oft bei CS/S sieht Blaue oder Rote Models. Oder Aimbot. Aber ich hab an GTA:SA gedacht, weil man das sehr schnell starten kann. Und warum nicht für sa:mp aimbot?
Aber na klar muss man sich von unten nach oben durch arbeiten^^ fing ich mit Basics und memorys an. War schon mir schwer genug weil es kaum Tutorials...
|
All times are GMT +1. The time now is 10:16.
|
|