MCPcopy Create free account
hub / github.com/Kitware/CMake / GetNumberOfRunningVisualStudioInstances

Method GetNumberOfRunningVisualStudioInstances

Source/cmCallVisualStudioMacro.cxx:365–395  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

363#endif // defined(HAVE_COMDEF_H)
364
365int cmCallVisualStudioMacro::GetNumberOfRunningVisualStudioInstances(
366 std::string const& slnFile)
367{
368 int count = 0;
369
370 LogErrorsAsMessages = false;
371
372#if defined(HAVE_COMDEF_H)
373 HRESULT hr = CoInitialize(0);
374 ReportHRESULT(hr, "CoInitialize");
375
376 if (SUCCEEDED(hr)) {
377 std::vector<IDispatchPtr> instances;
378 hr = FindVisualStudioInstances(slnFile, instances);
379 ReportHRESULT(hr, "FindVisualStudioInstances");
380
381 if (SUCCEEDED(hr)) {
382 count = static_cast<int>(instances.size());
383 }
384
385 // Force release all COM pointers before CoUninitialize:
386 instances.clear();
387
388 CoUninitialize();
389 }
390#else
391 (void)slnFile;
392#endif
393
394 return count;
395}
396
397//! Get all running objects from the Windows running object table.
398//! Save them in a map by their display names.

Callers

nothing calls this directly

Calls 3

sizeMethod · 0.45
clearMethod · 0.45

Tested by

no test coverage detected