VSLauncher запускает неправильную версию
У меня есть 3 версии Visual Studio и 3 проекта, для которых требуется определенная версия. VSLauncher ИСПОЛЬЗУЕТСЯ посмотреть файл SLN или VCPROJ и открыть правильную версию Visual Studio. Теперь он запускает самую последнюю версию, независимо от проекта.
Обратите внимание, что это не имеет ничего общего с распространенной проблемой с бета-версиями VS. ни один из SLN никогда не был затронут бета-версией VS.
Ответы
Ответ 1
Проблема заключалась в том, что файлы SLN были слегка повреждены. Удаление файлов и повторное воссоздание соответствующей версии VS привело к созданию файла, который инструмент сравнения считал идентичным, но был ровно на 3 байта длиннее. Я подозреваю, что проблема может быть связана с отсутствующей меткой порядка байтов UTF-8. Почему VSLauncher такой привередливый - это другой вопрос.
ДОБАВИТЬ: Да, после открытия нового файла в шестнадцатеричном редакторе я могу с уверенностью сказать, что проблема заключалась в отсутствующей спецификации старого файла. Это было сложно обнаружить, потому что мой инструмент сравнения, очевидно, даже не видит спецификацию.
Ответ 2
У меня была такая же проблема. VS 2008 решения, открывающиеся в VS2010 при двойном щелчке. Эта проблема ушла после первого перехода в VS 2008 и использования "Восстановить ассоциации файлов", затем щелкнув правой кнопкой мыши файл решения 2008 года и выбрав "Открыть" и указав его на "Селектор версий". До этого они неизменно открывались в 2010 году. Очень разочаровывает. Надеюсь это поможет.
Tools | Options | Environment | (big button marked Restore File Associations
Ответ 3
Я также нашел в Windows 7 Explorer, что я мог бы щелкнуть правой кнопкой мыши по sln, выбрать Open with/Choose default program, затем выбрать Microsoft Visual Studio Version Selector - он откроется с VS2008 (как это было необходимо), а затем on, двойной щелчок по файлу sln вызовет запуск VS2008.
Ответ 4
У меня была та же проблема.
Visual studio может нормально открыть решение, но селектор версии не смог правильно идентифицировать версию.
В моем случае возникла проблема с EOL. Так или иначе файл использовал формат UNIX EOL, изменив его обратно в формат Windows, селектор версий снова начал работать.