View previous topic :: View next topic |
Author |
Message |
Hoodles Newbie cheater Reputation: 0
Joined: 05 Jan 2006 Posts: 11
|
Posted: Thu Jan 26, 2006 10:56 am Post subject: How exactly handle is obtained |
|
|
Lately I've been trying to write a program/trainer that can modify a game with a process that is hidden by GameGuard functions (maplestory obviously). And since I do not know Delphi I cannot simply copy the code thats in the open source. I can write my proggie in VB, C++, or C#...So an explanation using any of these languages will suffice.
The problem is that the open source you provide does not have many comments and there are a vast amount of code and a large variety of functions and modules used to make up CE. It is hard to sift through. I just need to know the process of getting the handle on a process that is visible to begin with, then disappears (in a sense). I was able to create a loop that gets the PID and handle on said process, but once GG and the client loads...it like dies. And I cannot use it anymore.
If possible I would like to the exact way that CE is able to obtain a handle and keep it so you can modify the memory with kernel-mode functions defined in the DBK.
A general explanation or one in a language will do. Thanks =]
|
|
Back to top |
|
|
Mooblar Cheater Reputation: 0
Joined: 26 Jan 2006 Posts: 31
|
Posted: Thu Jan 26, 2006 11:08 am Post subject: Re: How exactly handle is obtained |
|
|
Hoodles wrote: | Lately I've been trying to write a program/trainer that can modify a game with a process that is hidden by GameGuard functions (maplestory obviously). And since I do not know Delphi I cannot simply copy the code thats in the open source. I can write my proggie in VB, C++, or C#...So an explanation using any of these languages will suffice.
The problem is that the open source you provide does not have many comments and there are a vast amount of code and a large variety of functions and modules used to make up CE. It is hard to sift through. I just need to know the process of getting the handle on a process that is visible to begin with, then disappears (in a sense). I was able to create a loop that gets the PID and handle on said process, but once GG and the client loads...it like dies. And I cannot use it anymore.
If possible I would like to the exact way that CE is able to obtain a handle and keep it so you can modify the memory with kernel-mode functions defined in the DBK.
A general explanation or one in a language will do. Thanks =] |
Why don't you just get the C++ source code?
|
|
Back to top |
|
|
Dark Byte Site Admin Reputation: 457
Joined: 09 May 2003 Posts: 25262 Location: The netherlands
|
Posted: Thu Jan 26, 2006 12:39 pm Post subject: |
|
|
The c++ code is a joke.
and regarding opening the process:
There are 3 methods:
1: enumerate all windows and get the processid from the window and call openprocess
2: try to open all processes from 0 to 7fff and check if the first module of each process that could be opened in the process you wanted.
3: write a processwatcher, I believe windows recently released a sdk with those functions in it, but I wrote a kernelmode routine that watches process creation and tells ce about it. Then open those processes.
and a different method in it's entirely is write your own kernelmode openprocess and read/write process memory api's
_________________
Do not ask me about online cheats. I don't know any and wont help finding them.
Like my help? Join me on Patreon so i can keep helping |
|
Back to top |
|
|
|