Results 1 to 7 of 7
  1. #1
    zeco's Avatar
    Join Date
    Jul 2009
    Gender
    male
    Location
    Canada
    Posts
    683
    Reputation
    12
    Thanks
    78
    My Mood
    Cynical

    Dll's and accessing program memory

    Hmm i guess this is just a general question. Let us say i had a program, that i didn't make, Program Cat. And i wanted to create a program to directly interact(ie have access to the memory of), with program Cat, called program Hi.

    Would the only way for program Hi to do this be to make program hi a dll instead of an exe, and injecting it into Cat?

    Also suppose lets say i wanted my now dll to have a GUI, could the GUI be coded directly into the DLL, or would it be necessary to make another exe that the dll interfaces with. infact is that even possible? Having the same dll be attached to 2 different processes at the same time?

    Also now that the topic comes up, when there is a dll, and it is either injected, or legitimately there, is it's purpose so that the program can draw functions from it or something like that? So kinda like for extensibility?

    Thanks, i'm new to DLL's, microsoft is confusing v_v

  2. #2
    zeco's Avatar
    Join Date
    Jul 2009
    Gender
    male
    Location
    Canada
    Posts
    683
    Reputation
    12
    Thanks
    78
    My Mood
    Cynical
    Woops accidentally posted again, sorry >_<.

    Anyway thanks for any replies.

  3. #3
    why06's Avatar
    Join Date
    Jul 2009
    Gender
    male
    Location
    IBM
    Posts
    4,304
    Reputation
    170
    Thanks
    2,203
    My Mood
    Flirty
    I've actually have been studying DLL lately. I don't really understand the .NET Framework, Windows and how it all interacts, but here is what I do know.

    DLL are like any other executable, so you can pretty much make them do whatever a executable can do. The only problem with DLL is they can not execute themselves o_O, so you need an executable to "call" on a .dll in order for it's code to run, but once called on a .dll can interact with other programs and even call on other .dll's

    Without .dll the window enviroment couldn't work because there has to be globally active programs that can access all other programs. Say you wanted to close a program, but the program froze D:... task manager allows you to do that because it can access the "frozen program's" code even though it is a separate entity.

    For this reason .dll are very powerful tools, that's how keyloggers can view your keystrokes even when you type it in another program.

    "Every gun that is made, every warship launched, every rocket fired signifies, in the final sense, a theft from those who hunger and are not fed, those who are cold and are not clothed. This world in arms is not spending money alone. It is spending the sweat of its laborers, the genius of its scientists, the hopes of its children. The cost of one modern heavy bomber is this: a modern brick school in more than 30 cities. It is two electric power plants, each serving a town of 60,000 population. It is two fine, fully equipped hospitals. It is some fifty miles of concrete pavement. We pay for a single fighter plane with a half million bushels of wheat. We pay for a single destroyer with new homes that could have housed more than 8,000 people. This is, I repeat, the best way of life to be found on the road the world has been taking. This is not a way of life at all, in any true sense. Under the cloud of threatening war, it is humanity hanging from a cross of iron."
    - Dwight D. Eisenhower

  4. #4
    Zhhot's Avatar
    Join Date
    Aug 2009
    Gender
    male
    Location
    Vancouver
    Posts
    314
    Reputation
    10
    Thanks
    52
    My Mood
    Inspired
    man u confused the crap out of me, call me a newb at C++, im still on the first chapter of the the C++ Beginner's Guide lol

  5. #5
    zeco's Avatar
    Join Date
    Jul 2009
    Gender
    male
    Location
    Canada
    Posts
    683
    Reputation
    12
    Thanks
    78
    My Mood
    Cynical
    Quote Originally Posted by Zhhot View Post
    man u confused the crap out of me, call me a newb at C++, im still on the first chapter of the the C++ Beginner's Guide lol
    If it confused you close your eyes before you break your brain >_<. It's generally not a good idea to research too far ahead until you understand the basics. This is especially true with anything to do with the microsoft API

  6. #6
    rwkeith's Avatar
    Join Date
    Jul 2008
    Gender
    male
    Posts
    457
    Reputation
    11
    Thanks
    79
    My Mood
    Angelic
    You would have to edit the engine for the process to call the dll you wanted but injectors force the dll into the memory of the process. Cutting work in half...
    Goals In Life:
    [X] Become an Advanced Member
    [X]Release a tut on mpgh
    [0]Post 300 posts
    [X]Make a working hack
    [X] Learn c++

  7. #7
    zeco's Avatar
    Join Date
    Jul 2009
    Gender
    male
    Location
    Canada
    Posts
    683
    Reputation
    12
    Thanks
    78
    My Mood
    Cynical
    Quote Originally Posted by rwkeith View Post
    You would have to edit the engine for the process to call the dll you wanted but injectors force the dll into the memory of the process. Cutting work in half...
    Ok, so it's not that different from my original thoughts.

Similar Threads

  1. Crossfire hacks [DLL and Program] Read
    By havelots56 in forum Programming Tutorial Requests
    Replies: 1
    Last Post: 07-25-2009, 12:27 PM
  2. White Walls and how programing
    By brkamikasecps in forum CrossFire Hacks & Cheats
    Replies: 1
    Last Post: 04-17-2009, 02:36 PM
  3. Hacking Programs And Way More
    By EleMentX in forum General Game Hacking
    Replies: 2
    Last Post: 09-09-2008, 08:55 PM
  4. Replies: 3
    Last Post: 01-04-2006, 09:52 PM
  5. Direct Memory Access (DMA) to Static Memory Addresses
    By Dave84311 in forum Game Hacking Tutorials
    Replies: 0
    Last Post: 12-31-2005, 08:18 PM

Tags for this Thread