Надежный способ программно определить версию CLR для конкретной сборки Visual Studio

Исторически я полагался на имя ключа реестра Версия CLR под HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ VisualStudio \\ CLR Version определить соответствие между CLR, сборкой версии .NET Framework и версией Visual Studio. Как видно из приведенных ниже снимков экрана, версия CLR была надежно представлена ​​в предыдущих версиях, и я полагаю, что даже в версиях, предшествовавших ранее упомянутым ниже
введите описание изображения здесь

Но когда я проверял тот же ключ реестра для Visual Studio 11.0 — 2012, эта информация отсутствовала.
введите описание изображения здесь

Итак, мой вопрос: каков надежный способ определения версии CLR для конкретной сборки Visual Studio?

PS:

  • Я хотел бы определить версию CLR программно из родной программы C ++, чтобы это означало Окружающая среда :: Версия не доступен.
  • Этот метод должен работать над версиями VS Надежно
  • Я не могу полагаться на любую существующую сборку и использовать ICLRMetaHost :: GetVersionFromFile и устарел GetFileVersion

7

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …