On Friday, 14 September 2012 at 18:35:53 UTC, Sean Kelly wrote:
On Sep 14, 2012, at 10:34 AM, alex <i...@alexanderbothe.com>
wrote:
1) So to anyone who's got richer experiences in programming
assembler and hacking/'debugging' programs than I - how would
you do it?
2) And why can't I inject a D DLL right into the program? I
tried it with a C DLL, it's working with that one, but then I
don't have access to D-specific functions..
Looking at that, would it make a difference to use dmc to
build/link a dll as a D/C++ hybrid or something?
You might want to check the madCodeHook library. It works
well, and there's a version that includes source code. Though
now that I check the site, it doesn't look like you can get the
source-included one for free any more.
The primary injection routine and how it works is not the problem
- I can successfully insert a MSVC++ Dll without any problems
into a D program. (I've used this
https://github.com/jeffora/extemory library btw - it's for c# :-))
Anyway, on a DLL built with dmc or dmd 1/2, the main program
immediately crashes or unloads the dll when returning false in
the DllMain()
So how to insert a D DLL into a D program?