Sign in to follow this  
Followers 0
Yorn

Memory reading character or strings not working.

6 posts in this topic

#1 ·  Posted (edited)

Below is the code that I used. It's heavily based on the WOW memory scanner, but it's for an entirely different game. The MemoryOpen command does not fail. The MemoryRead commands also do not fail. However the MemoryRead functions are returning *no* data when I know, using ArtMoney, that data is stored in those locations.

When the MsgBox's come up, they are invisible and contain no data. $L1, $L2, and $L3 don't even return 0.

func MemoryLoop()
            
;Check if memory is accesible
    Local $DllInformation = _MemoryOpen($ProcessID)
    If @Error Then
        MsgBox(4096, "ERROR", "Failed to open memory.")
        Exit
    EndIf
    
    $L1 = _MemoryRead(0x025C53F4, $DllInformation, 'char[26]')
    If @Error Then
        MsgBox(4096, "ERROR", "Failed to read memory.")
        Exit
    EndIf

    $L2 = _MemoryRead(0x025C549A, $DllInformation, 'char[60]')
    If @Error Then
        MsgBox(4096, "ERROR", "Failed to read memory.")
        Exit
    EndIf

    $L3 = _MemoryRead(0x025C5540, $DllInformation, 'char[60]')
    If @Error Then
        MsgBox(4096, "ERROR", "Failed to read memory.")
        Exit
    EndIf
    
    MsgBox(4096,"L1",$L1)
    MsgBox(4096,"L2",$L2)
    MsgBox(4096,"L3",$L3)

EndFunc;==>MemoryLoop

I'm thinking it might just be a mistake to use ArtMoney, but is there any AutoIt tool that you guys prefer for memory scanning in an app?

Edited by Yorn

Share this post


Link to post
Share on other sites



Bump. I really need to figure out either why this isn't working or what tools for memory scanning work well with AutoIt to do searches for text data in RAM.

Share this post


Link to post
Share on other sites

It may be starting on a null (0) character. AutoIt cuts strings at null.

Share this post


Link to post
Share on other sites

I think this is probably the case but I can't confirm it as such. Has anyone made a memory scanner in AutoIt that will search for strings of data? and report what memory address these strings start at?

Share this post


Link to post
Share on other sites

#5 ·  Posted (edited)

I think this is probably the case but I can't confirm it as such. Has anyone made a memory scanner in AutoIt that will search for strings of data? and report what memory address these strings start at?

You could try reading a byte at a time starting at the memory location you are using for the string and see what you get. What does the memory scanner you are using give for that location?

I don't understand you first post where you say the msgboxes are invisible. If they are then how do you know what's in them? I assume you mean nothing is shown for $L1 et.

Re you sure the processid is correct? How did you obtain it?

Edited by martin

Serial port communications UDF Includes functions for binary transmission and reception.printing UDF Useful for graphs, forms, labels, reports etc.Add User Call Tips to SciTE for functions in UDFs not included with AutoIt and for your own scripts.Functions with parameters in OnEvent mode and for Hot Keys One function replaces GuiSetOnEvent, GuiCtrlSetOnEvent and HotKeySet.UDF IsConnected2 for notification of status of connected state of many urls or IPs, without slowing the script.

Share this post


Link to post
Share on other sites

Basically, I'm being returned $null when ArtMoney says the exact same memory addresses contain data.

This is the part of the code:

MsgBox(4096,"L1",$L1)
MsgBox(4096,"L2",$L2)
MsgBox(4096,"L3",$L3)

When I get home I'll see if I can find out how I'm pulling the process ID, but I'm pretty sure I used the same method I've seen used in other scanners, taking the title of the Window and getting a processID from that. Elsewhere in the code I actually check to make sure I have a process. I suppose it might not be the right process, I'll have to check this again.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0