Memory.dll - C#/VB.NET Game Trainer Library

Upload *YOUR* gamehacking tools/helpers here
Post Reply
User avatar
Table Makers
Table Makers
Posts: 71
Joined: Thu Mar 16, 2017 4:55 pm
Reputation: 18

Memory.dll - C#/VB.NET Game Trainer Library

Post by erfg12 » Fri Jul 06, 2018 2:04 am

This library file can be used to create PC game cheat trainers. It can read and write to any program process.



[*]Built with C# for .NET projects.

[*]Check if process is running and open, all in 1 function.

[*]32bit and 64bit games supported.

[*]AoB scanning with full & partial masking.


[*][I]Example: "?? ?? ?? ?5 ?? ?? 5? 00 ?? A9 C3 3B ?? 00 50 00"[/I]


[*]Open process with ID or name and full privileges.

[*]Inject DLLs and create named pipes to communicate with them.


[*]See [URL='']this wiki article[/URL] for more info.


[*]Read & write to addresses.

[*]Can make external .ini file for code storage.

[*]Address structures can include modules with multiple offsets.


[*][I]Example: "game.exe+0x12345678,0x12,0x34,0x56"[/I]



Please check out the [URL='']Wiki[/URL] on the github repo for how to use it.

NuGet has the latest compiled releases. [URL][/URL]

Use Visual Studio to get it! Project > Manage NuGet Packages... > Browse > Search "memory.dll".

[URL='']This project is open source on github[/URL]
Last edited by erfg12 on Fri Jul 06, 2018 2:13 am, edited 2 times in total.
8-) I primarily make Cheat Tables and Trainers for older PC games and MacOS games.

:wub: My Patreon:

Expert Cheater
Expert Cheater
Posts: 50
Joined: Tue Aug 29, 2017 10:50 am
Reputation: 12

Memory.dll - C#/VB.NET Game Trainer Library

Post by JohnFK » Fri Jul 06, 2018 11:14 am

This can be very useful, thanks a lot.

Few suggestions:

- For maintenance throwinjg everything in one class is awful..NET is OOP language. Make use of it!

- Opening/reading/writing process does not specifically require admin rights. Your check should be optional

- Dont use the inbuilt Process.Modules as it fails/does not give you all modules when the bit version of yours and target process is different. Instead use WinAPI to enumerate modules

- There is a lot of copy and paste code (duplicated code). For example all reading/writing functions nearly have 95% of equal code. Maybe making one function where all others just point to and give the 5% different as paramater? Or even better, make usage of a generic function [URL][/URL]

- You dont check/handle the returns of WinAPI calls in Injectdll function, thus you will never know which api has failed why.

Post Reply

Who is online

Users browsing this forum: No registered users