VS: COM calls to Visual Studio Installer hang occasionally
The cmVSSetupAPIHelper
is used to look for VS 2017 instances and was created because vshwere did not exist at the time. I've discovered that the COM ParseVersion
hangs once in a while due to threading interactions with libuv's use of QueueUserWorkItem
's thread pool (whose threads to not initialize COM via CoInitializeEx).
Hopefully someone with suitable knowledge of COM can help out here.
Another approach is to investigate removing cmVSSetupAPIHelper
altogether and using vshwere
instead, now that it exists.