Jump to content
Sign in to follow this  
SamLearner

Reading Memory

Recommended Posts

SamLearner

Hello everybody. I'm trying to read a memory pointer of a program and I am having some troubles. I've read a lot of code about reading memories but I think I need to fail a little and get corrected to learn.

First of all, what I did was finding the static address I'm looking for.

The address is: 000555FC.

And these are the offsets:

Offset 0: 0

Offset 1: A8

Offset 2: 0

Offset 3: 0

Offset 4: F4

So I looked for a code to read a function and this is what I found:

#include <NomadMemory.au3>
#RequireAdmin
$ID=_MemoryOpen(ProcessExists("Program.exe"))
$Address=0x156102D8
$value=_MemoryRead($Address,$ID ,"int")
sleep(1000)
MsgBox(0,"Value", $value)

But this was for a dynamic address, so now I am trying with the static one I set right above.

This is what I tried (modifying other script):

#include <NomadMemory.au3>
SetPrivilege("SeDebugPrivilege", 1)
;get process
$ID = ProcessExists("Program.exe")
;check if khan is running
If ProcessExists("Program.exe") = 0 Then
    MsgBox(0, "Error", "Program is not running. Please start the program first.")
    Exit
EndIf
;Offset Array
Global $Offset[7] = [0, 0x00555FC, 0x0, 0xA8, 0x0, 0x0, 0xF4]
;Static Offsets
$StaticOffset = 0x00555FC
;Process 1
$openmem = _MemoryOpen($ID)
$baseADDR = _MemoryGetBaseAddress($openmem, 1)
;get final read addresss
$finalADDR = "0x" & Hex($baseADDR + $StaticOffset)
;Read
$Mread = _MemoryPointerRead($finalADDR, $openmem, $Offset)
;Close Memory
_MemoryClose($openmem)
;Test Display
MsgBox(0, "HP", "HP: " & $Mread[1])

But I don't know why it gives me always a "0" value.

Share this post


Link to post
Share on other sites
water

Welcome to Autoit and the forum!

Which program do you try to automate?

Edited by water

My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (2018-06-01 - Version 1.4.9.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2018-09-01 - Version 1.3.4.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
PowerPoint (2017-06-06 - Version 0.0.5.0) - Download - General Help & Support
Excel - Example Scripts - Wiki
Word - Wiki
 
Tutorials:

ADO - Wiki

 

Share this post


Link to post
Share on other sites
SamLearner

Welcome to Autoit and the forum!

Which program do you try to automate?

Sorry, I'm very new :P, I am just trying to read a memory allocation of a program, do you mean what is the name of this program?

It's called Warcraft 3, and I'm trying to get a value. I've already got the pointer and the offsets but I have problems coding it to get the value with the script.

Share this post


Link to post
Share on other sites
water

In this case you need to read the forum rules.

As you will see we don't do game automation here. Therefore you won't get help on this subject.

Hope to see you with a legitimate question soon :)


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (2018-06-01 - Version 1.4.9.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2018-09-01 - Version 1.3.4.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
PowerPoint (2017-06-06 - Version 0.0.5.0) - Download - General Help & Support
Excel - Example Scripts - Wiki
Word - Wiki
 
Tutorials:

ADO - Wiki

 

Share this post


Link to post
Share on other sites
Melba23

SamLearner,

water is quite right - please read the Forum Rules - particularly the bit about not discussing game interaction - before you post again. Thread locked. :naughty:

M23

Edited by Melba23
Typo

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

×