On Wed, 27 Sep 2017, Vincent Povirk wrote:
Could we try to run the .exe without specifying a test, and if it fails due to a missing dll (can we determine that?), skip the test?
Your idea is to not check for missing dlls and instead just run the executable as a way to check that all the required dlls are present?
The problem is that if a dll is missing the executable remains stuck while Windows displays a dialog saying the dll is missing. Also, killing the process does not dismiss the windows dialog.
Maybe we could take a page out of the shlexec test and wait for the executable for 5 seconds and do a FindWindowA("#32770", "Windows") to click on the OK ourselves.
But I believe on Windows 8+ we had problems due to Windows popping up a window offering to install the missing dll but we could not intercept that one. That said the dlls would be installed on machines that run WineTest regularly anyway.