Re: include abc.dll - any volunteers?
- Posted by Pete Lomax <petelomax at bl?eyonder?co.uk> Jan 08, 2008
- 723 views
Mike wrote: > > Would there be much use for a tool that could read a dll file and produce a > listing of variables and routines? I know I'd like to have such a capability > added to Orac enabling a user to include such libraries seamlessly. > > Thoughts? > Sorry, I meant to email you about this ages ago, but never got round to it. I don't think there's enough info. I actually have some code that will extract the names, but couldn't find any info about the number of parameters or their types, etc. Running Dependency Walker on say kernel32.dll also gives very limited info, so I'm pretty certain it simply ain't there. Instead I think you should aim to make say abc.dlx that contains such, whether a bunch of define_c_func constants or a csv-style text file. I wonder if there is any way to blag such things from std c header files? Does say Watcom automatically know about AllocConsole or does it load details from a file? (Or am I wrong and does it learn from kernel32.dll?) For that matter does Watcom give a proper compilation error if you pass AllocConsole the wrong number of parameters, or does it just let it bomb at run-time? I am of course worried about how useful it would really be to know there is a LoadResource routine, but no idea what parameters it takes or what result it returns, if any. I take it you know that I still chip away at dll_links.e, slowly making all entries into something like this:
xShellExecute = link_c_func(shell32, "ShellExecuteA", {C_LONG, -- HWND hwnd, // handle to parent window C_PTR, -- LPCTSTR lpOperation, // operation to perform C_PTR, -- LPCTSTR lpFile, // filename string C_PTR, -- LPTSTR lpParameters, // executable-file parameters C_PTR, -- LPCTSTR lpDirectory, // default directory C_LONG}, -- INT nShowCmd // whether file is shown when opened C_PTR), -- HINSTANCE
though admittedly that has slowed down now I have F1 help on [x]ShellExecute Regards, Pete