Howdy,
Been bored with EQ lately and decided to try writing some code to automize some things (just as a toy). My abjuration skill was always quite low, so something to press keys and watch the log file seemed like a good use of time. Like I said though, mostly just something to do.
Anyways, I haven't done Win32 programming before, so took awhile. Read up on different methods. keykb_event, sendinput, send/postmessage. All of these are useless it seems. I use from Perl using Win32::api, but it works with stuff like notepad, so I don't think it is perl problem (just mine/eq's).
So I find your site, and it is open source. I download source, and start looking.
I know Dev are busy, but if someone with a good understanding of the code wouldn't mind pointing me in the right direction, I'd be very appreciative. Here is my understanding:
VOID HookDInput(BOOL Patch) -- I know a bit about hooks (reading up on my problem). So we make a Direct Input device. We set it equal to a memory address (or something memory related, not too clear on how can just set it equal to # from ini file, keyboard always same place?) to value in eq ini file. And then confusing part. We link stuff up in ourdetours, and then Trampoline.
Trampoline is beyond me, but leads to...
HRESULT __stdcall DInputDataDetour(~) -- first part I sort of understand. Look at link-list made by /press and more importantly /sendkeys functions from later in library. Then take the link-list and set the key press into deviceobject structure (or whatever structure is, that is explained a lot on MSDN, so np). Tic-count, sorta ignore, not sure if important. Call trampoline again, not sure~. Then do more stuff with pdwinout and didadd (honestly haven't looked much at them yet, but will do, just wanted make post).
The Sendkeys function is clear.
So I'm not really sure what I'm asking =). I don't really need code-lines explained to me as much as I'd like to know what the general idea is here. I just want to know where to look for more info on the subject, not handout. Setup keyboard hook, stuff things into object, all done?
Thank you,
-Eyston

