Запрос командной строки для действительной лицензии Visual Studio? - PullRequest
0 голосов
/ 13 декабря 2018

Есть ли способ через командную строку определить, есть ли у конкретной установки Visual Studio 2017 действующая лицензия или нет?Что-то, кроме фактического выполнения Msbuild.exe и перехвата сообщения об ошибке?

У нас есть несколько виртуальных машин-разработчиков, которые идентичны, и на всех установлены VS 2017 Pro и Enterprise.Наши разработчики имеют различные лицензии для одного или другого.Некоторые машины используются исключительно одним разработчиком, некоторые совместно используются, а некоторые разработчики могут работать на нескольких виртуальных машинах.

Затем у нас есть сценарии сборки в виде файлов .bat, которые будут выполнять Msbuild для компиляции серии VSрешения.Конечно, версия Msbuild, которая работает, будет по одному или другому пути, или, возможно, они оба будут лицензированы.Но один и тот же скрипт сборки должен работать на каждой машине независимо.Что-то в форме:

if ProProductKeyIsActive (
  set MsBuildPath = "...\Professional\MSBuild\15.0\Bin\Msbuild.exe"
) else (
  set MsBuildPath = "...\Enterprise\MSBuild\15.0\Bin\Msbuild.exe"
)

Спасибо!

1 Ответ

0 голосов
/ 14 декабря 2018

Запрос командной строки для действительной лицензии Visual Studio?

AFAIK, через командную строку не существует такого способа, которым можно определить, имеет ли конкретная установка Visual Studio 2017действительная лицензия или нет.

Как мы знаем, мы могли бы узнать ключ реестра, содержащий информацию о лицензии:

HKEY_CLASSES_ROOT\Licenses\5C505A59-E312-4B89-9508-E162F8150517

Мы могли бы использовать пакетный файл, чтобы проверить, есть ли у нас этозначение реестра, чтобы определить, есть ли у Visual Studio 2017 лицензия, например:

Проверьте статус лицензии офиса из пакетного файла

, но, похоже, мы не можем знать, если этоЛицензия действительна.

Надеюсь, это поможет.

...