Hello,
I'll be honest. I'm here mainly because I have troubles with XInput in Delphi and I need to reply to this thread. But I'm hobby developer in Delphi and Lazarus for about 15 years so I sure can offer more than just this one post (but I can't promise anything).
Thank you.