Hirax Posted July 26, 2007 Share Posted July 26, 2007 (edited) Hello everyone today I decided that I wanted to dabble in memory. So I made this, it edits memory for you. It can't search values and address's or anything but it can edit one address at a time so far. I'm not really sure if this hasn't been done yet but here is my version. It requires two includes GUIConstants.au3 of course and NomadMemory.au3. Now there were about three includes I looked threw that could deal with memory and I chose this one it was quite easy to use really. So here you go the download pack comes with the includes and the source of course. If you have any suggestions or anything like that then just reply. Also there are a few things I am going to add to this I guess I'll add them later though.Download 4 KB:http://files.filefront.com/Memory+Writer+v...;/fileinfo.htmlScreen shot of memory writer.expandcollapse popup;Includes/NoTrayIcon Starting #Include <NomadMemory.au3> #Include <GUIConstants.au3> #NoTrayIcon ;Ended Global $NameOfProgram = InputBox( "Program Title" , "Please insert what program you would like to write memory to." ) Global $Adress = InputBox( "Adress" , "Please insert what adress you would like to write to. Note: Must be in hexidecimal format" ) Global $Value = InputBox( "Value" , "Please insert what value you would like to be written to the adress.") ;Ended Func _On() Global $PID = WinGetProcess( $NameOfProgram );Getting the program's PID number Global $DLLHandling = _MemoryOpen( $PID ) ;Opening the programs memory, must be done if you want to Read/Write memory Global $ReadOrginal = _MemoryRead( $Adress , $DllHandling ) ;Reading the orginal value, needed for the _off function $Writing = _MemoryWrite( $Adress , $DLLHandling , $Value ) ;Writing the value (you wrote) to the adress (You wrote) _MemoryClose( $DLLHandling ); Closing memory witch was prevously opened EndFunc Func _Off() $AgainOpeningDLL = _MemoryOpen( $PID );Opening memory so I can write to it. _MemoryWrite( $Adress , $AgainOpeningDLL , $ReadOrginal ) ;Writing the value that was retrived from the $ReadOrginal value _MemoryClose( $AgainOpeningDLL );Closeing memory again EndFunc Func _Close() Exit EndFunc GUICreate( "Memory Writer" , 400 , 110 ) GUISetState() $OnButton = GUICtrlCreateButton( "On" , 5 , 5 , 130 , 30 ) $OffButton = GUICtrlCreateButton( "Off" , 5 , 40 , 130 , 30 ) $CloseButton = GUICtrlCreateButton( "Exit" , 5 , 75 , 130 , 30 ) GUICtrlCreateLabel( "Address You Are Writing To: " & $Adress , 145 , 11 ) GUICtrlCreateLabel( "Value Written To Address: " & $Value , 145 , 46 ) GUICtrlCreateLabel( "Program Attached To: " & $NameOfProgram , 145 , 81 ) While 1 $msg = GUIGetMsg() Select Case $msg = $OnButton Call( "_On" ) Case $msg = $OffButton Call( "_Off" ) Case $msg = $CloseButton Call( "_Close" ) Case $msg = $GUI_EVENT_CLOSE ExitLoop EndSelect WEnd Edited July 26, 2007 by Larry Link to comment Share on other sites More sharing options...
mrbond007 Posted July 26, 2007 Share Posted July 26, 2007 very nice demonstration and easy to understand. Tanks for sharing Projects : Space Regain - Memory Fusion - PWGT - Chip-ITGames : BrainPain - BrainPain Director's Cut - ProSpeed Games Pack (New)Vista vs XP : the forbidden fight Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now