Yes. In the same order you asked:
- Use
LoadLibrary
for each DLL and check the return value. - If #1 succeeds, use
GetModuleFileName
to retrieve the full pathname to the DLL that was loaded.. - If #2 succeeds, use
GetFileVersionInfo
to see if the DLL has file version information available. If it does, useVerQueryValue
to read the version info (the same info you see by viewing Windows file properties).
They're all available from the Windows
unit. Examples of all three in Delphi should be found here at StackOverflow. If you can't find them, post separate questions (see below) here asking for help using them.
(Posts here should contain a single question, so that a single answer can be selected as an answer. If you include multiple questions in the same post, several people can each answer one of them separately; in that case, how do you choose which one to accept as correct?)