There is another problem, I don't know the return types of the functions from that dll, so I gave them the type "void *". I think this is incorrect. I've tried with the little knowledge I have from d and in the link is my kernel32.d. I have compiled it succesfully in a .dll but the application using that dll states that that dll isn't valid.
thank you for taking your time to answer this question :) . http://dl.dropbox.com/u/15024434/kernel32.d > > 2011/4/21 Robert Jacques <sandf...@jhu.edu> > >> On Thu, 21 Apr 2011 07:49:14 -0400, maarten van damme < >> maartenvd1...@gmail.com> wrote: >> >> Hello, I'm back (I've been ill, nothing serious) >>> I woul really like a bit more explanation with that particular approach. >>> Would declaring the functions I want to keep from the renamed dll in a >>> extern(c) block and linking that to the renamed dll while also declaring >>> them as export work? >>> And the function I want to change I declare myself and write in d? >>> >>> I haven't really mastered the d language and I'm simply playing around >>> with >>> it, simply checking if I've understood it. >>> >>> 2011/4/18 Robert Jacques <sandf...@jhu.edu> >>> >>> On Mon, 18 Apr 2011 04:11:16 -0400, maarten van damme < >>>> maartenvd1...@gmail.com> wrote: >>>> >>>> The problem with that aproach would be that the functions are in >>>> another >>>> >>>>> location in the export table. >>>>> I've read that the locations need to stay exactly the same. >>>>> Am I wrong about this? >>>>> >>>>> >>>> I don't know for sure, but my gut would say that not knowing the exact >>>> layout of the DLL is half the point. In practice, I've used D with DLLs >>>> that >>>> have drastically added to/changed their layout (according to dumpbin) >>>> without a problem. >>>> >>>> >> Hmm... It should work, but I've never tried it. Def files allow you to >> rename DLL functions, so you could rename the single function you want to >> override something else, or leave it out entirely. The only thing to be >> careful of is call style and name mangling (i.e. System vs C, etc.) >> > >