Valhalla Legends Archive

Programming => General Programming => Topic started by: PyroKid on September 07, 2003, 01:09 PM

Title: dll injection
Post by: PyroKid on September 07, 2003, 01:09 PM
im trying to make a plugin engine for games other then diablo so of course im learning code injection. i know how to intercept a function with a dll and i know how to load the dll through loadlibrary, but i cant figure out how to load a dll through another process. can someone help me/post a link to a newbie tutorial?

thanks :)
Title: Re:dll injection
Post by: Skywing on September 07, 2003, 02:06 PM
Quote from: PyroKid on September 07, 2003, 01:09 PM
im trying to make a plugin engine for games other then diablo so of course im learning code injection. i know how to intercept a function with a dll and i know how to load the dll through loadlibrary, but i cant figure out how to load a dll through another process. can someone help me/post a link to a newbie tutorial?

thanks :)
I'd recommend looking into the SetWindowsHookEx function.
Title: Re:dll injection
Post by: iago on September 07, 2003, 02:08 PM
http://forum.valhallalegends.com/phpbbs/index.php?board=5;action=display;threadid=2134
Title: Re:dll injection
Post by: PyroKid on September 07, 2003, 02:11 PM
wow thanks iago your the best. [/brownnose]

is there any way i could get the source though so i can make my own loaders?
Title: Re:dll injection
Post by: PyroKid on September 07, 2003, 02:21 PM
i looked at d2hackit and it executes loadlibrary in the target program. there is so much junk in the loader, however that it doesnt work for anything but diablo. thats the kind of thing im looking for except like a universal (or almost universal) loader
Title: Re:dll injection
Post by: iago on September 07, 2003, 03:36 PM
My source is basically copied from Programming Applications in Microsoft Windows by Jeffery Richter.  Refer to chapter 22 of that book.  It gives 3 techniques, skywing's, mine, and one other.  The sample program is called DUC I believe.

You can find that ebook somewhere on ftp://iago.no-ip.com ;-)