When an executable starts up on Windows, it depends on other installed software that is already in memory or has to be loaded to it.
A utility is needed that takes the executable as a parameter and lists all names of installed software the executable depens on. The list shall be output to file when the executable stops.
Together with the utility there shall be some written evidence that all dependent software has been found for that run.