How would you identify the application and version - the presence of a certain file, the properties of that file, a registry entry?
Even once you have answers to that, how would you interrogate the guest OS to get that information?
Why not use a software inventory tool such as MS Endpoint Manager?