Team explorer for microsoft visual studio 2015


Расследование ошибки установки Visual Studio 2015

Решили мы как-то перевести свой проект на Visual Studio 2015 — там ведь столько захватывающих фич! Вчера вот только решили, а уже сегодня утром я запустил её инсталлятор. Небо было безоблачным, ничто не предвещало беды. Ну что, в самом деле, может пойти не так? Сколько уже этих Visual Studio переставлено — не счесть (я, помнится, ещё 6.0 когда-то ставил). Кто бы мог подумать, что эта тривиальнейшая задача может вылиться в весьма неожиданный забег по граблям длинной почти в целый рабочий день.

Похрустев немного жестким диском, красивый инсталятор показал мне совершенно некрасивое сообщение об ошибке. Вот такое:

Хм. Не поставился значит, Team Explorer и ещё пару минорных пакетов. Ну ок. Закрываем, переустанавливаем. Не помогает. Удаляем студию, перезагружаемся, устанавливаем — та же ошибка. Лезем в Гугл с вопросом об ошибке установки Visual Studio 2015 на этапе инсталляции компонента Team Explorer и понимаем, что проблема это массовая — десятки ссылок с тем же описанием:1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17

Отвечают на все эти вопросы специалисты первой линии техподдержки Microsoft, советы которых сводятся к «отключите антивирус», «проверьте чексуму образа со студией», «проверьте диск на ошибки». Ничего из этого, конечно, не помогает, о чём им и рассказывают, после чего они пропадают и больше не отвечают. Очень дружелюбная пользовательская поддержка, ничего не скажешь.

Ну что же, пора включать голову, брать в руки инструменты и разбираться. Поехали. Итак, всё что у нас есть, это входная точка ошибки — проблема с Team Explorer. И ссылочка на лог-файл на приведённом выше скриншоте. Ну ок, давайте пойдём почитаем что там лог-файл думает о нашей ошибке.

Лог[15FC:1A18][2015-11-26T17:30:17]i000: MUX: ExecutePackageBegin PackageId: vs_teamExplorerCore [2118:2240][2015-11-26T17:30:17]i301: Applying execute package: vs_teamExplorerCore, action: Install, path: C:\ProgramData\Package Cache\{791295AE-3B0A-3222-9E69-26C8C106E8D1}v14.0.23102\packages\TeamExplorer\Core\vs_teamExplorerCore.msi, arguments: ' MSIFASTINSTALL="7" USING_EXUIH="1"' [15FC:1A18][2015-11-26T17:31:06]i000: MUX: ExecuteError: Package (vs_teamExplorerCore) failed: Error Message Id: 1722 ErrorMessage: There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor. [2118:2240][2015-11-26T17:31:09]e000: Error 0x80070643: Failed to install MSI package. [2118:2240][2015-11-26T17:31:09]e000: Error 0x80070643: Failed to execute MSI package. [15FC:1A18][2015-11-26T17:31:09]e000: Error 0x80070643: Failed to configure per-machine MSI package. [15FC:1A18][2015-11-26T17:31:09]i000: MUX: Installation size in bytes for package: vs_teamExplorerCore MaxAppDrive: 0 MaxSysDrive: 440487936 AppDrive: 0 SysDrive: 263573504 [15FC:1A18][2015-11-26T17:31:09]i000: MUX: Return Code:0x80070643 Msi Messages:There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor. Result Detail:0 Restart:None [15FC:1A18][2015-11-26T17:31:09]i000: MUX: Set Result: Return Code=-2147023293 (0x80070643), Error Message=There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor. , Result Detail=, Vital=True, Package Action=Install, Package Id=vs_teamExplorerCore [15FC:1A18][2015-11-26T17:31:09]i000: Setting string variable 'BundleResult' to value '1603' [15FC:1A18][2015-11-26T17:31:09]i319: Applied execute package: vs_teamExplorerCore, result: 0x80070643, restart: None [15FC:1A18][2015-11-26T17:31:09]e000: Error 0x80070643: Failed to execute MSI package.

Всё, что можно понять из этого лога, это то что компонент ставился-ставился, да что-то не поставился. Бывает, мол, чего уж там. Ну, спасибо большое за информацию!

Ладно, давайте зайдём с другой стороны. Team Explorer это (как и почти всё в современных версиях Visual Studio) — VSIX (компонент, расширение). Ставится отдельно от ядра студии специальной программой VSIXInstaller.exe, которая живёт в C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE и умеет при установке этих самых VSIX-компонентов писать во временную папку (ну, ту, которая %TEMP%) логи о том, как всё прошло. Идём в %TEMP%, находим по времени ошибки из лога выше файлик, соответствующий установке Team Explorer. Вот он:

Лог26.11.2015 17:31:01 - Microsoft VSIX Installer 26.11.2015 17:31:01 - ------------------------------------------- 26.11.2015 17:31:01 - Initializing Install... 26.11.2015 17:31:01 - Extension Details... 26.11.2015 17:31:01 - Identifier : Microsoft.VisualStudio.TeamFoundation.TeamExplorer.Extensions 26.11.2015 17:31:01 - Name : Team Foundation Team Explorer Extensions 26.11.2015 17:31:01 - Author : Microsoft 26.11.2015 17:31:01 - Version : 14.0.23102 26.11.2015 17:31:01 - Description : Team Foundation extensions for Team Explorer 26.11.2015 17:31:01 - Locale : en-US 26.11.2015 17:31:01 - MoreInfoURL : 26.11.2015 17:31:01 - InstalledByMSI : False 26.11.2015 17:31:01 - SupportedFrameworkVersionRange : [0.0,2147483647.2147483647] 26.11.2015 17:31:01 - 26.11.2015 17:31:06 - SignedBy : Microsoft Corporation 26.11.2015 17:31:06 - Certificate Info : [Subject] CN=Microsoft Corporation, OU=MOPR, OU=OPC, O=Microsoft Corporation, L=Redmond, S=Washington, C=US [Issuer] CN=Microsoft Code Signing PCA 2010, O=Microsoft Corporation, L=Redmond, S=Washington, C=US [Serial Number] 33000000A81581DB462EBDD9480000000000A8 [Not Before] 05.03.2015 1:42:40 [Not After] 05.06.2016 2:42:40 [Thumbprint] EFCF3B47C17854AB6E4C63821DE31A59B24D62B2 26.11.2015 17:31:06 - Supported Products : 26.11.2015 17:31:06 - Microsoft.VisualStudio.IntegratedShell 26.11.2015 17:31:06 - Version : [14.0] 26.11.2015 17:31:06 - Microsoft.VisualStudio.Express_All 26.11.2015 17:31:06 - Version : [14.0] 26.11.2015 17:31:06 - 26.11.2015 17:31:06 - References : 26.11.2015 17:31:06 - 26.11.2015 17:31:06 - Searching for applicable products... 26.11.2015 17:31:06 - System.TypeInitializationException: The type initializer for 'VSIXInstaller.SupportedSKUs' threw an exception. ---> System.BadImageFormatException: Could not load file or assembly 'Microsoft.VisualStudio.Settings.14.0.dll' or one of its dependencies. is not a valid Win32 application. (Exception from HRESULT: 0x800700C1) at VSIXInstaller.SupportedSKUs.AddInstalledIsolatedShells(Version vsVersion) at VSIXInstaller.SupportedSKUs..cctor() --- End of inner exception stack trace --- at VSIXInstaller.SupportedSKUs.get_SupportedSKUsList() at VSIXInstaller.App.InitializeInstall(Boolean isRepairSupported) at VSIXInstaller.App.OnStartup(StartupEventArgs e) 26.11.2015 17:31:06 - System.TypeInitializationException: The type initializer for 'VSIXInstaller.SupportedSKUs' threw an exception. ---> System.BadImageFormatException: Could not load file or assembly 'Microsoft.VisualStudio.Settings.14.0.dll' or one of its dependencies. is not a valid Win32 application. (Exception from HRESULT: 0x800700C1) at VSIXInstaller.SupportedSKUs.AddInstalledIsolatedShells(Version vsVersion) at VSIXInstaller.SupportedSKUs..cctor() --- End of inner exception stack trace --- at VSIXInstaller.SupportedSKUs.get_SupportedSKUsList() at VSIXInstaller.App.OnExit(ExitEventArgs e)

Ну, тут уже побольше всякого интересного написано, конечно. Нас интересует первый момент, когда что-то пошло не так. Вот он:

26.11.2015 17:31:06 - System.TypeInitializationException: The type initializer for 'VSIXInstaller.SupportedSKUs' threw an exception. ---> System.BadImageFormatException: Could not load file or assembly 'Microsoft.VisualStudio.Settings.14.0.dll' or one of its dependencies. is not a valid Win32 application. (Exception from HRESULT: 0x800700C1)

Хм, произошла ошибка при попытке загрузить сборку Microsoft.VisualStudio.Settings.14.0.dll. Первой моей мыслью было то, что студия как-то запуталась в порядке установки своих компонентов и пытается использовать при установке что-то, что ещё не установилось куда надо. Так, есть у нас в системе такая библиотека?

Оказалось — есть. Лежит в GAC, там где ей и положено лежать:

Так, что же получается? Сборка есть, она находится там, где нужно, но не загружается. Может быть, битая? Берём IL DASM, загружаем — всё ок.

Может быть умельцы из Microsoft сумели написать такой инсталлятор, у которого иногда получается не найти сборку в GAC? Берём Process Monitor, добавляем в него фильтр на открытие файлов и снова запускаем инсталлятор студии. Доходим до ошибки, смотрим логи.

Так, инсталлятор ищет Microsoft.VisualStudio.Settings.14.0.dll и находит её ровно там, где она и должна быть — в GAC. Ок, что же не так? Читаем ещё раз сообщение об ошибке: «System.BadImageFormatException: Could not load file or assembly 'Microsoft.VisualStudio.Settings.14.0.dll' or one of its dependencies. is not a valid Win32 application.». Так, если сама Microsoft.VisualStudio.Settings.14.0.dll есть и валидна — может быть дело в одной из её зависимостей? Возвращаемся в Process Monitor и смотрим что там загружается непосредственно после нашей сборки.

Ага, vcruntime140.dll загружается. Это redistributable-библиотека от Visual Studio 2015. Ну, она-то точно должна была поставиться на одном из первых этапов установки! Но давайте проверим, чем уже чёрт не шутит.

Проверка раз — в списке установленных программ:

Проверка два — в папке C:\Windows\SysWOW64\:

Проверка три — это, собственно, «SUCCESSS» в логе Process Monitor:

Последняя проверка — вообще железобетонный аргумент: видите, поискали, попробовали открыть, открылось успешно — значит файл найдён. Всё, подозрения снимаются, идём дальше. Так, какую-же библиотеку инсталлятор VSIX пытается подгрузить следующей по логами Process Monitor?

Как это опять vcruntime140.dll уже в другой папке?! Получается, найдя vcruntime140.dll в папке C:\Windows\SysWOW64\ и успешно её открыв (а мы знаем что так и было по логам выше!) загрузчик зависимостей всё-же почему-то счёл её недостаточно хорошей и отбросил. Как же так?! Это что — не майкрософтовская библиотека? Смотрим свойства:

Да нет, нормальная библиотека. Почему же не загрузилась? Давайте посмотрим на неё внимательнее. Для этого в составе любой версии Visual Studio есть отличная утилита dumpbin. Запускаем её с вот такими ключами:

dumpbin /headers c:\windows\SysWOW64\vcruntime140.dll

и смотрим на результаты:

Microsoft (R) COFF/PE Dumper Version 10.00.40219.01 Copyright (C) Microsoft Corporation. All rights reserved. Dump of file c:\windows\SysWOW64\vcruntime140.dll PE signature found File Type: DLL FILE HEADER VALUES 8664 machine (x64) 7 number of sections 558CE2FF time date stamp Fri Jun 26 08:28:31 2015 0 file pointer to symbol table 0 number of symbols F0 size of optional header 2022 characteristics Executable Application can handle large (>2GB) addresses DLL .... Подождите-подождите… А почему это ты, библиотечка, 64-битная?! Ты же лежишь в папке C:\windows\SysWOW64\, где вообще-то место только 32-битным библиотекам! А ну-ка давайте посмотрим, что же тогда лежит в C:\Windows\System32?

А то же самое (кто не верит в размер — можете проверить каким-нибудь WinMerge, они идентичны). Вы уже уловили, в чём суть? Ошибка закралась в инсталятор Redistributable-компонентов, входящий в инсталятор Visual Studio 2015 — он просто ставит 64-битные версии рантайм-библиотек и в папку для 64-битных библиотек (C:\Windows\System32) и в папку для 32-битных (c:\windows\SysWOW64\). В итоге при дальнейшей попытке использования 64-битной версии всё будет ок, а вот при попытке загрузки 32-битной версии будет то, что мы увидели при установке Team Explorer — загадочные ошибки вообще без упоминания библиотеки vcruntime140.dll и Redistributable-пакета. И делай, что хочешь.

А что же мы хотим делать? А удалить x86-часть Redistributable-пакета Visual Studio 2015, скачать её отдельно с сайта Microsoft и переустановить. Сюрприз — на сайте Microsoft версия правильная, она установит 32-битную версию библиотеки в C:\windows\SysWOW64, после чего можно перезапустить установку Visual Studio 2015 и она успешно дойдёт до конца!

Happy end.

Осталось как-то объяснить начальству почему это я целый день устанавливал Visual Studio, если с этим дети в третьем классе за час справляются. В общем-то ради этой цели и была написана данная статья, а уж зачем вы её прочли — я не знаю :)

P.S. Справедливости ради следует отметить, что поиск по той же проблеме с упоминанием слов «redistributable» и «vcruntime140» всё-таки выводит на одиноко валяющийся на обочине Stackoverflow вопрос с правильным ответом (кто-то прошел тот же путь, что и я!), который в виду своей низкой оценки("+1" на момент написания статьи) не воспринимается людьми, как настоящее решение проблемы. Не будем забирать у автора того ответа пальму первенства и плодить лишние сущности, если описанная в статье проблема коснулась и вас, а предложенное решение помогло — вы можете проголосовать за этот ответ на Stackoverflow.

habrahabr.ru

Visual Studio 2015 Update 3 Release Notes

Release Date: June 27, 2016

Today, we are happy to announce the release of Visual Studio 2015 Update 3. One of the top issues reported in Update 2 was around high memory consumption. We addressed this issue in Update 3 RC, reached out to customers who had reported this issue, and received positive confirmation on the fix. In Update 3 you will see many such fixes addressing customer feedback around performance and stability. If these were not the release notes you were expecting, you have reached the release notes for the most current version.

Send us your feedback using the Feedback option in Visual Studio. You may also submit suggestions on the Visual Studio 2015 UserVoice site.

Download

You can download Visual Studio 2015 from My.VisualStudio.com. My.VisualStudio.com requires a free Dev Essentials subscription, or a Visual Studio Subscription.

For additional information, see How to Install a Specific Release of Visual Studio.

What's New?

Other Changes

Tools for Apache Cordova

Visual Studio 2015 Update 3 includes Tools for Apache Cordova Update 10, including the improvements below. For more information about this release, see the Tools for Apache Cordova release notes for Update 9 and Update 10. For the latest news about our tools, visit our Developer Blog on GitHub.

  • We've added support for Cordova 6.1.1, the default version for new projects.
  • We've retired the Cordova Plugin Registry that was used in Cordova 4.x, which means that we now require a minimum of Cordova 5.x or later to add plugins.
  • The Core Plugins list has been updated and now includes plugins for enterprise scenarios, such as Intune, Azure engagement, security, and SQLite local storage.
  • You can now add plugins from the config designer either by the npm package name or by the ID.

  • You can also add plugins that require parameters from the config designer.

Developer Analytics Tools

We've added the following improvements in Developer Analytics Tools v7.0.2:

  • Application Insights Trends, a tool for finding trends in your app's telemetry.
  • New Exception telemetry in CodeLens.
  • Production telemetry information added to exceptions in Diagnostic Tools.
  • Support for adding Application Insights to ASP.NET Core RC2 projects from Visual Studio.
  • Diagnostic Tools events for ASP.NET 5 RC1 and ASP.NET Core RC2 projects.
  • Automatic refreshes of Application Insights Search when detail filters, time ranges, and events are selected.
  • Go to Code from requests in Search.
  • Improved HockeyApp sign-in experience.

For more information, see the technical release notes in the Microsoft Azure documentation.

Debugging and Diagnostics

Diagnostic Tools support for apps running on OneCore devices, including HoloLens and IOT, has been added in Update 3.

C++ Edit and Continue improvements:
  • Better performance and reliability when FASTLINK is enabled.
  • Successful application of code changes to static libraries no longer produces Stale Code.
  • C4656 warnings will no longer appear for false positive type changes during recompilation.
  • Support for adding a new type with the same name crossing multiple compilation units.
XAML UI Debugging improvements:
  • Whenever the focus changes in your app, the new Track Focus feature in the Live Visual Tree will cause selection in the Live Visual Tree to update to the currently focused element.

Visual Studio IDE

Subscriptions and product keys

We've addressed feedback in Update 3 from customers using subscriptions through an online identity or product keys to unlock the IDE, in the following ways:

  • You are no longer required to visit https://my.visualstudio.com to activate your assigned Visual Studio Cloud subscription, and can immediately start using the Visual Studio IDE as soon as the subscription is assigned.
  • We've improved error handling when applying a product key.
  • All user account and licensing operations are now secured by using HTTPS.
  • We've made accessibility improvements in the Account Settings dialog for activating a subscription and entering a product key.
  • New Re-authentication every ~8 days is no longer required to keep the personalization account active and synchronizing roaming settings.

Tools for Universal Windows Apps

Visual Studio 2015 Update 3 comes with several enhancements to the Tools for Universal Windows apps. A key improvement allows you to sign in with Azure Active Directory credentials for an AAD Store account when creating a package to submit to the Windows Store. Once the project has been associated with the Windows Store, you will no longer need to sign in to create a package to submit to the Store.

.NET Native for Universal Windows Apps

.NET Native 1.4 is a minor servicing release that improves performance, addresses several customer reported bugs and improves Release build compilation times of large apps. XAML applications and Unity games that use .NET Native 1.4 will have better runtime performance. These improvements were achieved by making both reflection and native API calls faster.

Architecture Tools

We've addressed feedback from customers about improving performance and reliability.

Domain Specific Graphical Designers (including EDMX and DBML)

On Windows 10, Visual Studio is no longer unresponsive when you are opening or attempting to edit large EDMX or DBML diagrams while the on-screen keyboard is displayed.

Code Map
  • Visual Studio is no longer unresponsive when you are trying to "Generate Code Map for Solution" when the solution contained installer projects (.vdproj).
  • Visual Studio is no longer unresponsive when you run a code map command from the code editor and close the Code Map window as soon as it appears.
Layer Validation
  • When building a solution having a modeling project containing a Layer diagram with a Validate action, a CPU core is no longer used after the build completes.
  • You can now validate a layer diagram when its parent modeling project is referencing PCL libraries (for instance ODP.Net).

Node.js Tools for Visual Studio

New Node.js Tools 1.2 RC for Visual Studio is now available for download. We expect this release to provide significantly improved stability and performance, including reducing out-of-memory crashes seen in prior releases.

Other highlights include:

  • Faster, better ES6 IntelliSense
  • More reliable debugging
  • Improved Unit Testing experiences (including Tape support)
  • .npm command in more project types

For full information and downloads, see the Node.js Tools 1.2 RC release page.

Web Developer Tools

For ASP.NET Web Application projects, when "Enable Edit and Continue" checkbox is unchecked, the IIS Express process will no longer stop every time you stop debugging.

Visual C++

Enhancements, such as new checks and warning messages for the C++ Compiler, as well as support and performance improvements for C# and Visual Basic coding, were included in Update 3.

C++ Compiler
  • We now check the access of a deleted trivial copy/move ctor. Without the check, we may incorrectly call the defaulted copy ctor (in which the implementation can be ill-formed) and cause potential runtime bad code generation.
  • Std::is_convertible now correctly detects self-assignment of a class type when the copy-constructor is deleted or private.
  • As the last phase of completing the deprecation of attributed ATL support started in Visual Studio 2008, we've added a new deprecation warning to the compiler. With Visual Studio 2015 Update 3, usages of attributed ATL code will generate an on-by-default level 1 warning. C4467
  • When using PCH files, mismatched -I include directories to the compiler between -Yc and -Yu compilations will now produce a new warning. C4599
  • When using PCH files, mismatched #include directives in source files between -Yc and -Yu compilations will now produce a warning. C4598

For more information on how these changes might impact your existing code, see Visual C++ Porting and Upgrading Guide on MSDN.

C++ Libraries
  • We've restored debug mode performance when destroying ranges of trivial objects that regressed in Update 2, like in vector.
  • We've implemented the swappable traits from the C++17 working paper, from the proposal P0185 Adding [nothrow-]swappable traits. As a speculative C++17 feature, the traits (is_swappable, is_swappable_with, is_nothrow_swappable, and is_nothrow_swappable_with) are only visible, and the constraints on std::swap are only active, when compiling with /std:c++latest.
  • We've removed ETW eventing calls from vcruntime140.dll and static libraries that previously fired during process startup and dllmain.
  • New We've removed symbol name length in common machinery used by STL containers, such as std::vector, reducing likelihood of C4503 warnings. For example, the following type no longer generates a warning: concurrency::concurrent_unordered_map<wstring, vector<pair<uint64_t, vector<uint8_t>>>>.

  • ATL/MFC/AMP/PPL: Lots of conformance fixes related to two-phase lookup, as follows:

    • _com_ptr_t now has a move constructor and move assignment operator.
    • MFC: Fixed handling of HMENU values that occasionally prevented menus from being properly displayed in 64-bit applications.

    • ATL/MFC: No longer emit the following warnings:

    • Function overriding/hiding: C4263, C4264, C4266
    • Mismatching exception specification: C4986
    • /analyze: C6386

    • ATL: All variations of AtlThrow are now properly marked with __declspec(noreturn). This prevents erroneous SAL warnings from being emitted.

    • ATL: Fixed/Improved several SAL annotations.

    • /std:c++latest enables the following new features: P0025R1 "clamp()", P0185R1 "is_swappable, is_nothrow_swappable", and P0272R1 "Non-const basic_string::data().".

    • /std:c++latest also controls the removal of the following old features: N4190 "Removing auto_ptr, random_shuffle(), And Old Stuff", P0004R1 "Removing Deprecated Iostreams Aliases", LWG 2385 "function::assign allocator argument doesn't make sense", and various non-Standard features (the std::tr1 namespace, some TR1-only machinery, and the std::identity struct).

    • Silent bad codegen in atomic<int64_t>/atomic<uint64_t> on x86 was fixed.

    • The STL now avoids using thread-safe "magic statics" except when absolutely necessary, improving codegen.

    • Tuple's perfect forwarding constructor now avoids out-competing the copy constructor, fixing compiler errors in certain scenarios.

  • Coroutines:

    • Deprecated the following: __yield_value & __await keywords. Use co_await / co_yield instead.
    • Added deprecation notice to: to_address and from_promise members of coroutine_handle class. Instead of coroutine_handle::to_address(), use coroutine_handle::address().
    • Instead of coroutine_handle::from_promise(Promise *P), use coroutine_handle::from_promise(Promise &P).
  • We've improved performance of the following: std::equal and std::lexicographical_compare by dispatching to memcmp and memchr more aggressively, resulting in large performance improvements in some scenarios. For example: equal(char,char,char, char) on 64 bit platforms.

    • debug builds significantly by reducing the number of bookkeeping function calls in our iterator debugging machinery.
    • string::push_back has improved another 40% vs. Update 2 in release builds, with more substantial improvements in debug builds. (This is in addition to large performance improvements here that shipped in Update 2).
    • Debug builds across all standard algorithms have improved by eliminating several types of empty template metaprogramming support calls (for example,_Iter_cat), across all algorithms that take predicates by reducing the number of predicate copies.
    • std::mismatch under _ITERATOR_DEBUG_LEVEL 1 and 2 by range checking the second range where possible ahead of iteration.
  • We've applied improved diagnostics for _SCL_INSECURE_DEPRECATE messages to the remaining algorithms (in Update 2 only a small number of algorithms were hooked into the new deprecation mechanism). This also improves the debugging experience when debugging into the standard algorithms, as there is no longer any _ITERATOR_DEBUG_LEVEL preprocessor interaction declaring multiple copies of standard algorithms. We have also fixed the following:

    • We've fixed the inability to compile some functions like mismatch(iter, iter, T[]) due to interaction between our nonstandard _ITERATOR_DEBUG_ARRAY_OVERLOADS and dual-range algorithms.
  • We've fixed violations of the off-by-default warning C4242 in the STL.
  • We've fixed possible integer overflow bug in std::pop_heap.
  • We've fixed potential hang under /clr:pure due to CLR-inserted LoadLibrary calls while holding the locale lock.
C++/CLI Debugging
  • New The C++/CLI expression evaluator now supports debugger features, such as Natvis, that were previously only supported for pure native apps. Now in a mixed managed/native app when objects are listed in a variable window (or inside a datatip), they will expand just like they do in a pure native app as defined by the type visualizers.

Clang/C2 Platform Toolset

We've integrated Clang 3.8 release into Clang/C2 and provided a 64-bit hosted toolset.

C++ MDD

We've enabled support for the latest Android NDK version R11C and the capability to upgrade the current projects to target the latest NDK.

TypeScript

New Visual Studio 2015 Update 3 includes TypeScript 1.8.34. We've fixed an out of memory error with some large TypeScript projects that use AngularJS.

C# and Visual Basic

New We've invested in reducing memory footprint and improving the performance of code diagnostics. This will reduce a lot of the out-of-memory crashes seen in prior releases. We’ve improved the performance of running code diagnostics on an entire solution. To learn more about code diagnostic performance enhancements, read the How to: Enable and Disable Full Solution Analysis for Managed Code page on MSDN.

Additional improvements include the following:

  • An option to add a reference to a NuGet package as a quick fix:

You can enable this option from Tools > Options > Text Editor > C# > Advanced, under "Using Directives":

  • We've improved support for Portable class libraries targeting the .NET Platform Standard.
  • We've added performance improvements to the C# GoTo Implementation and Find All References. You can try these by selecting an object, right-clicking on it and then selecting them from the menu.
  • When you apply a “fix all” action to document/project/solution we now display a progress bar.
  • New Improved performance when reloading C# and VB projects in large solutions. For more information and tips, read: Performance considerations for large solutions.

Team Explorer

New Several bugs have been fixed in Team Explorer:

  • Unable to view the contents of a file that was deleted from a Git repository.
  • When viewing the history of a branch, the Go to Child icon should be disabled when the focus is the latest commit.
  • When changing branches using Git.exe, Visual Studio may crash or get into an unknown state.
  • When viewing the history of a branch in a Git repository, the highlighting in the history graph has glitches.
  • When creating a branch in Team Explorer, the Alt+B shortcut for Create Branch conflicts with the Build menu.
  • In a high memory usage situation, when attempting to unpack an object larger than the available memory, Git gives an error of "Object not found - no matching loose object ()" instead of an out of memory error.
  • Typo in the error message "... In order the open this solution ...".
  • When viewing the history of a branch and right clicking on the first commit in history, Cherry Pick is disabled.
  • When creating a pull request from the Team Explorer branches page context menu uses the current branch instead of the selected branch.

Xamarin for Visual Studio

New Visual Studio 2015 Update 3 now includes Xamarin 4.1. In addition to a number of bug fixes, this release adds support for tvOS, improves the iOS Assets Catalog support, improves the XML editing experience, and adds selectors for SSL/TLS and HttpClient implementations when creating iOS apps. For more information, see the Xamarin release notes.

Known Issues

For a complete description of known issues in this release, see the following MSDN article: Known Issues in Visual Studio Update 3

www.visualstudio.com

Расследование ошибки установки Visual Studio 2015

Решили мы как-то перевести свой проект на Visual Studio 2015 — там ведь столько захватывающихфич! Вчера вот только решили, а уже сегодня утром я запустил её инсталлятор. Небо было безоблачным, ничто не предвещало беды. Ну что, в самом деле, может пойти не так? Сколько уже этих Visual Studio переставлено — не счесть (я, помнится, ещё 6.0 когда-то ставил). Кто бы мог подумать, что эта тривиальнейшая задача может вылиться в весьма неожиданный забег по граблям длинной почти в целый рабочий день.

Похрустев немного жестким диском, красивый инсталятор показал мне совершенно некрасивое сообщение об ошибке. Вот такое:

Хм. Не поставился значит, Team Explorer и ещё пару минорных пакетов. Ну ок. Закрываем, переустанавливаем. Не помогает. Удаляем студию, перезагружаемся, устанавливаем — та же ошибка. Лезем в Гугл с вопросом об ошибке установки Visual Studio 2015 на этапе инсталляции компонента Team Explorer и понимаем, что проблема это массовая — десятки ссылок с тем же описанием: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17

Отвечают на все эти вопросы специалисты первой линии техподдержки Microsoft, советы которых сводятся к «отключите антивирус», «проверьте чексуму образа со студией», «проверьте диск на ошибки». Ничего из этого, конечно, не помогает, о чём им и рассказывают, после чего они пропадают и больше не отвечают. Очень дружелюбная пользовательская поддержка, ничего не скажешь.

Ну что же, пора включать голову, брать в руки инструменты и разбираться. Поехали.Итак, всё что у нас есть, это входная точка ошибки — проблема с Team Explorer. И ссылочка на лог-файл на приведённом выше скриншоте. Ну ок, давайте пойдём почитаем что там лог-файл думает о нашей ошибке.

Лог [15FC:1A18][2015-11-26T17:30:17]i000: MUX: ExecutePackageBegin PackageId: vs_teamExplorerCore [2118:2240][2015-11-26T17:30:17]i301: Applying execute package: vs_teamExplorerCore, action: Install, path: C:\ProgramData\Package Cache\{791295AE-3B0A-3222-9E69-26C8C106E8D1}v14.0.23102\packages\TeamExplorer\Core\vs_teamExplorerCore.msi, arguments: ' MSIFASTINSTALL="7" USING_EXUIH="1"' [15FC:1A18][2015-11-26T17:31:06]i000: MUX: ExecuteError: Package (vs_teamExplorerCore) failed: Error Message Id: 1722 ErrorMessage: There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor. [2118:2240][2015-11-26T17:31:09]e000: Error 0x80070643: Failed to install MSI package. [2118:2240][2015-11-26T17:31:09]e000: Error 0x80070643: Failed to execute MSI package. [15FC:1A18][2015-11-26T17:31:09]e000: Error 0x80070643: Failed to configure per-machine MSI package. [15FC:1A18][2015-11-26T17:31:09]i000: MUX: Installation size in bytes for package: vs_teamExplorerCore MaxAppDrive: 0 MaxSysDrive: 440487936 AppDrive: 0 SysDrive: 263573504 [15FC:1A18][2015-11-26T17:31:09]i000: MUX: Return Code:0x80070643 Msi Messages:There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor. Result Detail:0 Restart:None [15FC:1A18][2015-11-26T17:31:09]i000: MUX: Set Result: Return Code=-2147023293 (0x80070643), Error Message=There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor. , Result Detail=, Vital=True, Package Action=Install, Package Id=vs_teamExplorerCore [15FC:1A18][2015-11-26T17:31:09]i000: Setting string variable 'BundleResult' to value '1603' [15FC:1A18][2015-11-26T17:31:09]i319: Applied execute package: vs_teamExplorerCore, result: 0x80070643, restart: None [15FC:1A18][2015-11-26T17:31:09]e000: Error 0x80070643: Failed to execute MSI package.

Всё, что можно понять из этого лога, это то что компонент ставился-ставился, да что-то не поставился. Бывает, мол, чего уж там. Ну, спасибо большое за информацию!

Ладно, давайте зайдём с другой стороны. Team Explorer это (как и почти всё в современных версиях Visual Studio) — VSIX (компонент, расширение). Ставится отдельно от ядра студии специальной программой VSIXInstaller.exe, которая живёт в C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE и умеет при установке этих самых VSIX-компонентов писать во временную папку (ну, ту, которая %TEMP%) логи о том, как всё прошло. Идём в %TEMP%, находим по времени ошибки из лога выше файлик, соответствующий установке Team Explorer. Вот он:

Лог 26.11.2015 17:31:01 - Microsoft VSIX Installer 26.11.2015 17:31:01 - ------------------------------------------- 26.11.2015 17:31:01 - Initializing Install... 26.11.2015 17:31:01 - Extension Details... 26.11.2015 17:31:01 - Identifier : Microsoft.VisualStudio.TeamFoundation.TeamExplorer.Extensions 26.11.2015 17:31:01 - Name : Team Foundation Team Explorer Extensions 26.11.2015 17:31:01 - Author : Microsoft 26.11.2015 17:31:01 - Version : 14.0.23102 26.11.2015 17:31:01 - Description : Team Foundation extensions for Team Explorer 26.11.2015 17:31:01 - Locale : en-US 26.11.2015 17:31:01 - MoreInfoURL : 26.11.2015 17:31:01 - InstalledByMSI : False 26.11.2015 17:31:01 - SupportedFrameworkVersionRange : [0.0,2147483647.2147483647] 26.11.2015 17:31:01 - 26.11.2015 17:31:06 - SignedBy : Microsoft Corporation 26.11.2015 17:31:06 - Certificate Info : [Subject] CN=Microsoft Corporation, OU=MOPR, OU=OPC, O=Microsoft Corporation, L=Redmond, S=Washington, C=US [Issuer] CN=Microsoft Code Signing PCA 2010, O=Microsoft Corporation, L=Redmond, S=Washington, C=US [Serial Number] 33000000A81581DB462EBDD9480000000000A8 [Not Before] 05.03.2015 1:42:40 [Not After] 05.06.2016 2:42:40 [Thumbprint] EFCF3B47C17854AB6E4C63821DE31A59B24D62B2 26.11.2015 17:31:06 - Supported Products : 26.11.2015 17:31:06 - Microsoft.VisualStudio.IntegratedShell 26.11.2015 17:31:06 - Version : [14.0] 26.11.2015 17:31:06 - Microsoft.VisualStudio.Express_All 26.11.2015 17:31:06 - Version : [14.0] 26.11.2015 17:31:06 - 26.11.2015 17:31:06 - References : 26.11.2015 17:31:06 - 26.11.2015 17:31:06 - Searching for applicable products... 26.11.2015 17:31:06 - System.TypeInitializationException: The type initializer for 'VSIXInstaller.SupportedSKUs' threw an exception. ---> System.BadImageFormatException: Could not load file or assembly 'Microsoft.VisualStudio.Settings.14.0.dll' or one of its dependencies. is not a valid Win32 application. (Exception from HRESULT: 0x800700C1) at VSIXInstaller.SupportedSKUs.AddInstalledIsolatedShells(Version vsVersion) at VSIXInstaller.SupportedSKUs..cctor() --- End of inner exception stack trace --- at VSIXInstaller.SupportedSKUs.get_SupportedSKUsList() at VSIXInstaller.App.InitializeInstall(Boolean isRepairSupported) at VSIXInstaller.App.OnStartup(StartupEventArgs e) 26.11.2015 17:31:06 - System.TypeInitializationException: The type initializer for 'VSIXInstaller.SupportedSKUs' threw an exception. ---> System.BadImageFormatException: Could not load file or assembly 'Microsoft.VisualStudio.Settings.14.0.dll' or one of its dependencies. is not a valid Win32 application. (Exception from HRESULT: 0x800700C1) at VSIXInstaller.SupportedSKUs.AddInstalledIsolatedShells(Version vsVersion) at VSIXInstaller.SupportedSKUs..cctor() --- End of inner exception stack trace --- at VSIXInstaller.SupportedSKUs.get_SupportedSKUsList() at VSIXInstaller.App.OnExit(ExitEventArgs e)

Ну, тут уже побольше всякого интересного написано, конечно. Нас интересует первый момент, когда что-то пошло не так. Вот он:

26.11.2015 17:31:06 - System.TypeInitializationException: The type initializer for 'VSIXInstaller.SupportedSKUs' threw an exception. ---> System.BadImageFormatException: Could not load file or assembly 'Microsoft.VisualStudio.Settings.14.0.dll' or one of its dependencies. is not a valid Win32 application. (Exception from HRESULT: 0x800700C1)

Хм, произошла ошибка при попытке загрузить сборку Microsoft.VisualStudio.Settings.14.0.dll. Первой моей мыслью было то, что студия как-то запуталась в порядке установки своих компонентов и пытается использовать при установке что-то, что ещё не установилось куда надо. Так, есть у нас в системе такая библиотека?

Оказалось — есть. Лежит в GAC, там где ей и положено лежать:

Так, что же получается? Сборка есть, она находится там, где нужно, но не загружается. Может быть, битая? Берём IL DASM, загружаем — всё ок.

Может быть умельцы из Microsoft сумели написать такой инсталлятор, у которого иногда получается не найти сборку в GAC? Берём Process Monitor, добавляем в него фильтр на открытие файлов и снова запускаем инсталлятор студии. Доходим до ошибки, смотрим логи.

Так, инсталлятор ищет Microsoft.VisualStudio.Settings.14.0.dll и находит её ровно там, где она и должна быть — в GAC. Ок, что же не так? Читаем ещё раз сообщение об ошибке: «System.BadImageFormatException: Could not load file or assembly 'Microsoft.VisualStudio.Settings.14.0.dll' or one of its dependencies. is not a valid Win32 application.». Так, если сама Microsoft.VisualStudio.Settings.14.0.dll есть и валидна — может быть дело в одной из её зависимостей? Возвращаемся в Process Monitor и смотрим что там загружается непосредственно после нашей сборки.

Ага, vcruntime140.dll загружается. Это redistributable-библиотека от Visual Studio 2015. Ну, она-то точно должна была поставиться на одном из первых этапов установки! Но давайте проверим, чем уже чёрт не шутит.

Проверка раз — в списке установленных программ:

Проверка два — в папке C:\Windows\SysWOW64\:

Проверка три — это, собственно, «SUCCESSS» в логе Process Monitor:

Последняя проверка — вообще железобетонный аргумент: видите, поискали, попробовали открыть, открылось успешно — значит файл найдён. Всё, подозрения снимаются, идём дальше. Так, какую-же библиотеку инсталлятор VSIX пытается подгрузить следующей по логами Process Monitor?

Как это опять vcruntime140.dll уже в другой папке?! Получается, найдя vcruntime140.dll в папке C:\Windows\SysWOW64\ и успешно её открыв (а мы знаем что так и было по логам выше!) загрузчик зависимостей всё-же почему-то счёл её недостаточно хорошей и отбросил. Как же так?! Это что — не майкрософтовская библиотека? Смотрим свойства:

Да нет, нормальная библиотека. Почему же не загрузилась? Давайте посмотрим на неё внимательнее. Для этого в составе любой версии Visual Studio есть отличная утилита dumpbin. Запускаем её с вот такими ключами:

dumpbin /headers c:\windows\SysWOW64\vcruntime140.dll

и смотрим на результаты:

Microsoft (R) COFF/PE Dumper Version 10.00.40219.01 Copyright (C) Microsoft Corporation. All rights reserved. Dump of file c:\windows\SysWOW64\vcruntime140.dll PE signature found File Type: DLL FILE HEADER VALUES 8664 machine (x64) 7 number of sections 558CE2FF time date stamp Fri Jun 26 08:28:31 2015 0 file pointer to symbol table 0 number of symbols F0 size of optional header 2022 characteristics Executable Application can handle large (>2GB) addresses DLL ....

Подождите-подождите… А почему это ты, библиотечка, 64-битная?! Ты же лежишь в папке C:\windows\SysWOW64\, где вообще-то место только 32-битным библиотекам! А ну-ка давайте посмотрим, что же тогда лежит в C:\Windows\System32?

А то же самое (кто не верит в размер — можете проверить каким-нибудь WinMerge, они идентичны). Вы уже уловили, в чём суть? Ошибка закралась в инсталятор Redistributable-компонентов, входящий в инсталятор Visual Studio 2015 — он просто ставит 64-битные версии рантайм-библиотек и в папку для 64-битных библиотек (C:\Windows\System32) и в папку для 32-битных (c:\windows\SysWOW64\). В итоге при дальнейшей попытке использования 64-битной версии всё будет ок, а вот при попытке загрузки 32-битной версии будет то, что мы увидели при установке Team Explorer — загадочные ошибки вообще без упоминания библиотеки vcruntime140.dll и Redistributable-пакета. И делай, что хочешь.

А что же мы хотим делать? А удалить x86-часть Redistributable-пакета Visual Studio 2015, скачать её отдельно с сайта Microsoft и переустановить. Сюрприз — на сайте Microsoft версия правильная, она установит 32-битную версию библиотеки в C:\windows\SysWOW64, после чего можно перезапустить установку Visual Studio 2015 и она успешно дойдёт до конца!

Happy end.

Осталось как-то объяснить начальству почему это я целый день устанавливал Visual Studio, если с этим дети в третьем классе за час справляются. В общем-то ради этой цели и была написана данная статья, а уж зачем вы её прочли — я не знаю :)

P.S. Справедливости ради следует отметить, что поиск по той же проблеме с упоминанием слов «redistributable» и «vcruntime140» всё-таки выводит на одиноко валяющийся на обочине Stackoverflow вопрос с правильным ответом (кто-то прошел тот же путь, что и я!), который в виду своей низкой оценки не воспринимается людьми, как настоящее решение проблемы. Не будем забирать у автора того ответа пальму первенства и плодить лишние сущности, если описанная в статье проблема коснулась и вас, а предложенное решение помогло — вы можете проголосовать за этот ответ на Stackoverflow.

© Habrahabr.ru

pcnews.ru

Visual Studio 2015 Update 3 Known Issues

Last Updated: 10/3/2017

June 27, 2016

Microsoft released Visual Studio 2015 Update 3 on June 27, 2016. This article lists the known issues for Visual Studio 2015 Update 3. If these were not the known issues you were expecting, you have reached the known issues for the most current version.

To see the full list of features check out the Visual Studio Update 3 Release Notes.

Download: Visual Studio Update 3

To learn more about other related downloads, see the Downloads page.

Known Issues

Installation Issues

When Installing Update 3, Setup Does Not Show Update 3 As An Install Option
  • Issue:

    If you have Visual Studio 2015 with Update 1 or Update 2, when installing Visual Studio 2015 Update 3 by using VS2015.3.exe, setup may indicate that you already have an earlier update installed, but does not show that Update 3 can be installed. The feature selection dialog also does not show any updated features.

    You will experience this issue if you installed Visual Studio 2015 Update 1 or Update 2 using the /layout command and then try to install Visual Studio 2015 Update 3 by running VS2015.3.exe.

  • Workaround:

    Instead of installing Visual Studio 2015 Update 3 by using VS2015.3.exe, install the update by using a full product installer. You can find installers for "Visual Studio 2015 with Update 3" on the Visual Studio download page. Select the "Visual Studio 2015 with Update 3" download that matches the edition you already have installed, whether Community, Professional, or Enterprise.

    Alternatively, you can follow the steps in Updating an installation to force an update to the layouts.

Team Explorer: Installer displays CTP1
  • Issue:

    When installing Update 3, you may see Team Explorer in the status bar incorrectly labeled as CTP1.

  • Workaround:

    None needed, this is an incorrect string.

Install Errors When Creating or Opening a UWP Project
  • Issue:

    If you have Visual Studio Update 2 or earlier installed, along with the Tools for UWP app development, you may incorrectly receive errors when creating or opening UWP projects. When creating a UWP project you may receive an error that "the project requires a platform SDK (UWP, Version=10.0.10586.0) that is not installed." Or, when opening an existing UWP project, you may receive an error "Install Missing Features. You need the Universal Windows App Development Tools to develop Windows app projects." The project will also be unloaded. If you click Install, Visual Studio 2015 Update 3 is installed.

  • Workaround:

    Install Visual Studio 2015 Update 3. Or, install the updated Windows SDK (1511) version 10.0.10586.212.

  • Update [29 June 2016]

    This issue has been fixed. To receive the fix, close and re-open Visual Studio while you have an internet connection. Then, for projects that open as unloaded, right-click and select "Reload Project". This fix does not require that you install Visual Studio 2015 Update 3. However, due to important fixes in the Windows SDK (1511), if you continue to use Visual Studio 2015 Update 2, we do recommend you update the Windows SDK to build 10.0.10586.212.

Error Installing Optional Items
  • Issue:

    When running the Visual Studio Update 3 installer from www.VisualStudio.com, you may see a message box that provides information about Secondary Installer usage syntax. After dismissing the dialog, the Update 3 will fail to install correctly.

  • Update [29 June 2016]

    This issue has been fixed. The problem was caused by the downloaded installer having a space in the filename. This can happen if the file was downloaded twice, causing the browswer to rename the file to something like "vs_community_ENU (1).exe". The updated installer available on www.VisualStudio.com now correctly handles spaces in filenames, and installations will successfully complete.

  • Note:

    If you received this error, simply modify Visual Studio from Control Panel -> Programs -> Programs and Features, and make sure that you reselect the optional components that you intended to install. The Visual Studio installer will correctly install the optional items that previously failed.

Visual C++ : Project creation failure after Update
  • Issue:

    After Update 3 is installed, in some cases, Visual C++ projects cannot be created with HResult 0x80041FE2. In some cases, applying Update 3 can cause the optional feature selections for Visual C++ (e.g. Common Tools for Visual C++ 2015) to become deselected and uninstalled.

  • Workaround:

    This issue can be resolved by re-selecting the required Visual C++ features in the Visual Studio 2015 setup dialog:

    • In "Programs and Features" (Add/Remove Programs), select "Microsoft Visual Studio 2015 [with Updates]", then click "Change".
    • In the Visual Studio setup dialog, click "Modify"
    • Select/check "Programming Languages->Visual C++->Common Tools for Visual C++ 2015" and other features under "Programming Languages->Visual C++", as appropriate.
    • Click "UPDATE".

Other Issues

Visual Studio Does Not Support Windows Information Protection
  • Issue:

    Visual Studio 2015 is unable to use data protected by Windows Information Protection (WIP). (WIP, formerly known as Enterprise Data Protection or EDP, is a new security feature in Windows 10 Anniversary Update. For more information see the Windows ITPro Blog or TechNet.) If any of your source code files are encrypted by Windows Information Protection, when trying to compile a project using the Visual Studio or third-party compilers, you will see errors like:

    • Error MSB4025: The project file could not be loaded. Access to the path is denied.
    • Error MSB4014: System.UnauthorizedAccessException: Access to the path is denied.
  • Workaround:

    To work around this issue, turn off Windows Information Protection. To verify whether Windows Information Protection is enabled, right-click on the file. If there is a context menu item "File Ownership", then WIP is enabled.

Visual C++: Passing non-pointer-like types to uninitialized_copy, uninitialized_copy_n, or uninitialized_fill
  • Issue:

    Passing non-pointer-like types to uninitialized_copy, uninitialized_copy_n, or uninitialized_fill fails to compile.

  • Workaround:

    Provide a pointer_traits specialization for the supplied type.

Error when Reloading Shared Projects
  • Issue:

    When using shared projects or linked files included in multiple projects, such as Universal Windows 8.1 Store projects, if you unload and then reload the project you may receive an error “The method or operation is not implemented”.

  • Workaround:

    Close the solution and then re-open it. You can avoid the error by closing files from shared projects before unloading the project.

Windows Universal App Development

Known issues for Windows Universal App Development can be found in the forum Known Issues for Windows 10 SDK and Tools.

More information

Restart requirement

You may have to restart your computer after you install this package.

Software requirement

On Windows 8.1 and Windows Server 2012 R2, you have to install update 2919355 (also available through Windows Update) before you install Visual Studio 2015 RTM. This is because the .NET Framework 4.6 installer can't be installed without update 2919355.

Supported architectures
  • 32-bit (x86)

  • 64-bit (x64) (WOW)

Third-party applications
  • Visual Studio 2015 installation lets you install third-party applications. For information about which third-party applications are required when you install Cross Platform Mobile Development tools from Visual Studio 2015 , see Knowledge Base article 3060693.

  • Visual Studio 2015 removal does not uninstall third-party applications. For information about how to uninstall third-party applications that were installed together with Visual Studio 2015, see Knowledge Base article 3060695.

Applies to
  • Visual Studio Professional 2015

  • Visual Studio Enterprise 2015

  • Visual Studio Community 2015

  • Visual Studio Express 2015 for Web

  • Visual Studio Express 2015 for Desktop

  • Visual Studio Express 2015 for Windows 10

msdn.microsoft.com

Where's my Team Explorer 2015? - SQL Shack

Introduction

If you have been using Team Foundation Server (TFS) for as long as I have, you will recall that just about every release of TFS has always been accompanied by standalone Team Explorer and Team Explorer Everywhere software installers. So you will understand my bewilderment when I couldn’t locate these installers following a successful setup of on-premise (on-prem) TFS 2015 server instance for my employer. After going through every possible link on search engine results relating to “Team Explorer 2015,” I concluded that only Team Explorer Everywhere 2015 was released this time around.

What’s the big deal?

  1. Creating new Team Project

    I suppose you are wondering why I am suddenly up in arms for a supposedly missing standalone Team Explorer 2015 installer. Again, if you have administered TFS for as long as I have, you should already know that you can do just about anything on Team Foundation Server Configuration Center except create new Team Projects. Honestly, I’ve never understood the business model by Microsoft as to why we have to step out of Team Foundation Server Configuration Center in order to create TFS Team Project as it already requires one to be at least a member of a Project Collection Administrator role to be able to set it up. Anyway, I digress, Team Explorer is basically a client software package required to create Team Project against an on-prem server instance.

    You are probably again wondering:

    “Surely, if I claim to be familiar with TFS for as long as I claim to have, I should be able to use earlier versions of Team Explorer?”

    The answer to the above is yes and no.

    Yes, I can connect to TFS 2015 on-prem instance using earlier versions of Team Explorer (i.e. Team Explorer 2013) and be able to do things like configure workspaces, download source control, check-in pending files etc.

    No, I cannot create new Team Project against TFS 2015 on-prem instance when using earlier versions of Team Explorer. The error message, shown in Figure 1, comes up when I pertinaciously create a TFS 2015 Team Project using Team Explorer 2013:

    Figure 1: Team Project Error Message
  2. TFS Project Management using Microsoft Excel and Project

    Another reason as to why the missing Team Explorer is a big deal is that I have business-oriented users (i.e. Business Analysts, project managers, SCRUM masters etc.) who have gotten used to managing business requirements (i.e. user stories, product backlog) by adding and removing work items using the TFS Add-on for Excel. Thus, when we load a new machine for such business-oriented users, we usually throw in a Team Explorer to help them integrate Excel with TFS.

    As a result of the missing Team Explorer, I now have to explain myself to these users with questions that sometimes go as follows:

    “Hey, IT guy (they usually don’t know our names), where is my Team Explorer 2015?”

The Workaround

As I’ve learnt (mostly, the hard way) over the years as a system administrator is that you always need a plan B – regardless of limitless software assurances from vendors. Consequently, this section addresses one of the ways to circumvent the aforementioned issues.

  1. TFS Project Management using Microsoft Excel and Project

    The good news is that you can still use earlier versions of Team Explorer to integrate Microsoft Excel to TFS 2015 on-prem instance. For instance, Figure 2 shows several instances of Team Foundation Add-in (which represent different versions of Team Explorer installed in my client machine) and regardless of what version of the Add-in I activate, they all seem to connect to my TFS 2015 on-prem instance.

    Figure 2: Microsoft Excel Add-ins showing Team Foundation Add-in
  2. Creating new Team Project

    Whilst the workaround on integration between Microsoft Excel and TFS 2015 on-prem instance will not require additional software installations provided (you had already installed earlier versions of Team Explorer), unfortunately, the workaround for creating new Team Projects is not that straightforward. Instead it requires one to install corresponding Visual Studio version (i.e. Visual Studio 2015) which is not always ideal and comes at an expense of your storage disk-space. Let me elaborate further on this unfavourable workaround via a step-by-step installation process that I used recently:

    Step 1: Download and install Visual Studio 2015 Community (VSC 2015) edition – which is free.

    As indicated in Figure 3, I opted to do a custom installation without any features – yet, a minimum 6G of free space was required:

    Figure 3: VSC 2015 Custom Installation

    Step 2: Review Size of VSC 2015 Installation

    Upon completion of VSC 2015 installation, I reviewed a list of programs that were installed as part of setting up VSC 2015. I suppose it’s important to note that prior to the VSC 2015 installation, I only had 1 installed program in my Oracle VirtualBox virtual machine:

    Figure 4: List of Installed Programs Prior to VSC 2015 installation

    As I can be seen in Figure 5, the after VSC 2015 I now have several software packages that have been installed as part the custom installation.

    Figure 5: List of Installed Programs after VSC 2015 installation

    The cost of disk-space is excessive when you realise that when you only had Team Explorer to install – a disk space of not more than 400MB was required.

    Figure 6: Size of Team Explorer 2013

    Anyway, after you have setup VSC 2015, you should be able to launch Team Explorer window to successfully setup new Team Projects for your TFS 2015 on-prem instance. You can launch Team Explorer by either clicking on the Open from Source Control link underneath your Visual Studio Start Page or clicking on the Team menu item > Manage Connections.

    Figure 7: Launching Team Explorer in VSC 2015

Finally, I suggest that if you can’t afford any more disk-space in your client machine or virtual machines – rather:

  • Setup VSC 2015
  • Create new Team Projects
  • Uninstall VSC 2015
  • Re-Install Team Explorer 2013 and use to manage your instance

Remember that like most Microsoft software packages, Visual Studio 2015 is subject to new service packs and related patches that can sometimes require additional disk-space. Thus, another reason I am in favour of uninstalling VSC 2015 (having created your Team Projects) is because you will ensure that you don’t get update reminders about Visual Studio 2015 services packs – you are after all a TFS administrator not a developer.

Conclusion

I hope sanity prevails and Team Explorer 2015 stand-alone installer is later released. Until, then you have to find creative ways of handling the situation.

See more

Consider these free tools for SQL Server that improve database developer productivity.

Sifiso W. Ndlovu

Sifiso is a Johannesburg based certified professional within a wide range of Microsoft Technology Competencies such SQL Server and Visual Studio Application Lifecycle Management.

He is the member of the Johannesburg SQL User Group and also hold a Master’s Degree in MCom IT Management from the University of Johannesburg.

He currently works for Clientele Life as an Assistant Manager in Business Software Solutions.

View all posts by Sifiso W. Ndlovu

Latest posts by Sifiso W. Ndlovu (see all)

www.sqlshack.com

Известные проблемы в обновлении 3 для Visual Studio 2015

Последнее обновление: 21.02.2017

27 июня 2016 г.

27 июня 2016 г. Майкрософт выпустила обновление 3 для Visual Studio 2015. В этой статье перечислены известные проблемы в обновлении 3 для Visual Studio 2015. Если это не те известные проблемы, которые вы ожидали увидеть, обратите внимание, что перед вами известные проблемы, связанные с самой последней версией.

Чтобы просмотреть полный список возможностей, обратитесь к статье Заметки о выпуске для Visual Studio 2015 с обновлением 3.

Загрузка. Обновление 3 для Visual Studio

Дополнительные сведения о связанных скачиваемых файлах см. на странице Скачивания.

Известные проблемы

Проблемы установки

При установке обновления 3 программа установки не отображает его как вариант установки.
  • Проблема.

    Если вы используете Visual Studio 2015 с обновлением 1 или обновлением 2, при установке Visual Studio 2015 с обновлением 3 с помощью VS2015.3.exe программа установки может сообщить, что у вас уже установлена более ранняя версия обновления, но при этом обновление 3 отсутствует в списке возможных вариантов установки. В диалоговом окне выбора компонентов также не отображаются обновленные компоненты.

    Эта проблема возникает, если вы установили Visual Studio 2015 с обновлением 1 или обновлением 2, используя команду /layout, а затем пытаетесь установить Visual Studio 2015 с обновлением 3 с помощью VS2015.3.exe.

  • Решение

    Вместо установки Visual Studio 2015 с обновлением 3 с помощью VS2015.3.exe установите обновление, используя полный установщик продукта. Установщики для Visual Studio 2015 с обновлением 3 можно найти на странице скачиваемых файлов Visual Studio. Выберите скачиваемый файл Visual Studio 2015 с обновлением 3, совпадающий с уже установленным выпуском: Community, Professional или Enterprise.

    Кроме того, вы можете выполнить шаги в разделе Обновление установки, чтобы принудительно применить обновление к макетам.

Team Explorer: установщик отображает ознакомительную версию для сообщества 1
  • Проблема.

    При установке обновления 3 в строке состояния Team Explorer может по ошибке отображаться ознакомительная версия для сообщества 1.

  • Решение

    Не требуется, это неправильная строка.

Ошибки установки при создании или открытии проекта UWP
  • Проблема.

    Если вы используете Visual Studio с обновлением 2 или более раннюю версию, а также инструменты для разработки приложений UWP, вы можете получать некорректные ошибки при создании или открытии проектов UWP. При создании проекта UWP вы можете получить ошибку «для проекта требуется пакет SDK платформы (UWP, Version=10.0.10586.0), который не установлен». Кроме того, при открытии существующего проекта UWP вы можете получить ошибку «Установите отсутствующие компоненты. Для разработки проектов приложений Windows требуются инструменты разработки универсальных приложений Windows». Проект будет также выгружен. При нажатии кнопки «Установить» устанавливается Visual Studio 2015 с обновлением 3.

  • Решение

    Установите Visual Studio 2015 с обновлением 3. Вы также можете установить обновленную версию Windows SDK (1511) 10.0.10586.212.

  • Обновление [29 июня 2016 г.]

    Эта проблема была исправлена. Чтобы получить исправление, перезапустите Visual Studio при наличии подключения к Интернету. Затем щелкните правой кнопкой мыши проекты, открытые как выгруженные, и выберите «Перезагрузить проект». Это исправление не требует установки Visual Studio 2015 с обновлением 3. Однако, если вы продолжите использовать Visual Studio 2015 с обновлением 2, рекомендуется обновить Windows SDK для сборки 10.0.10586.212 из-за внесения важных исправлений в Windows SDK (1511).

Ошибка при установке дополнительных элементов
  • Проблема.

    При запуске установщика Visual Studio с обновлением 3 по ссылке www.VisualStudio.com может появиться окно с сообщением, где указаны сведения о синтаксисе использования вторичного установщика. Если вы закроете диалоговое окно, обновление 3 не удастся установить.

  • Обновление [29 июня 2016 г.]

    Эта проблема была исправлена. Проблему вызывал скачанный установщик с пробелом в имени файла. Это может происходить при повторном скачивании файла: браузеру необходимо переименовать файл, например в vs_community_ENU (1).exe. Обновленный установщик, доступный по ссылке www.VisualStudio.com, теперь правильно обрабатывает пробелы в именах файлов, и установка завершается успешно.

  • Примечание.

    Если вы получаете эту ошибку, просто измените Visual Studio в разделе «Панель управления» -> «Программы» -> «Программы и компоненты» и убедитесь, что вы повторно выбрали дополнительные компоненты, которые хотите установить. Установщик Visual Studio правильно установит дополнительные элементы, завершившиеся сбоем.

Visual C++: сбой при создании проекта после установки обновления
  • Проблема.

    В некоторых случаях после установки обновления 3 не удается создать проекты Visual C++, возвращается ошибка HResult 0x80041FE2. Иногда после установки этого обновления выбранные дополнительные компоненты для Visual C++ (например, "Общие инструменты для Visual C++ 2015") могут быть выключены и удалены.

  • Решение

    Эту проблему можно устранить, повторно выбрав необходимые компоненты Visual C++ в диалоговом окне установки Visual Studio 2015:

    • В разделе "Программы и компоненты" ("Добавление и удаление программ") выберите "Microsoft Visual Studio 2015 [с обновлениями]" и щелкните "Изменить".
    • В диалоговом окне установки Visual Studio выберите "Изменить".
    • Выберите "Языки программирования -> Visual C++ -> Общие инструменты для Visual C++ 2015" и другие необходимые компоненты в разделе "Языки программирования -> Visual C++".
    • Нажмите кнопку "Обновить".

Другие проблемы

Visual Studio не поддерживает Windows Information Protection
  • Проблема.

    Visual Studio 2015 не может использовать данные, которые находятся под защитой Windows Information Protection. (Windows Information Protection, ранее известная как защита корпоративных данных, или EDP, — это новая функция безопасности в юбилейном обновлении Windows 10. Дополнительные сведения см. в блоге ИТ-специалистов Windows или на сайте TechNet.) Если файлы исходного кода зашифрованы с помощью Windows Information Protection, при попытке скомпилировать проект с использованием Visual Studio или сторонних компиляторов отобразится одна из следующих ошибок:

    • "MSB4025. Не удалось загрузить файл проекта. Отказано в доступе по пути ".
    • "MSB4014. System.UnauthorizedAccessException. Отказано в доступе по пути ".
  • Решение

    Чтобы устранить эту проблему, отключите Windows Information Protection. Чтобы проверить, включена ли функция Windows Information Protection, щелкните файл правой кнопкой мыши. Если в меню есть пункт "Владение файлом", эта функция включена.

Visual C++: передача типов без указателей в uninitialized_copy, uninitialized_copy_n или uninitialized_fill
  • Проблема.

    Не удалось скомпилировать передачу типов без указателей в uninitialized_copy, uninitialized_copy_n или uninitialized_fill.

  • Решение

    Предоставьте специализацию pointer_traits для указанного типа.

Ошибка при перезапуске общих проектов
  • Проблема.

    Если при использовании общих проектов или связанных файлов, включенных в несколько проектов, таких как проекты универсального магазина Windows 8.1, вы выгрузите, а затем перезапустите проект, может возникнуть ошибка «Метод или операция не реализованы».

  • Решение

    Закройте решение и повторно откройте его. Вы можете избежать ошибки, закрыв файлы из общих проектов перед тем, как выгрузить проект.

Разработка универсальных приложений для Windows

Известные проблемы при разработке универсальных приложений для Windows можно найти на форуме известных проблем, связанных с пакетом SDK и инструментами для Windows 10.

Дополнительные сведения

Требуется ли перезагрузка?

После установки пакета может потребоваться перезагрузить компьютер.

Требования к программному обеспечению

В Windows 8.1 и Windows Server 2012 R2 для установки Visual Studio 2015 RTM требуется установить обновление 2919355 (оно также доступно в Центре обновления Windows). Это необходимо сделать, так как установщик .NET Framework 4.6 не выполнит установку без обновления 2919355.

Поддерживаемые архитектуры
Сторонние приложения
  • Программа установки Visual Studio 2015 позволяет устанавливать сторонние приложения. Сведения о том, какие сторонние приложения необходимы при установке средств для разработки кроссплатформенных мобильных приложений в Visual Studio 2015, см. в статье базы знаний 3060693.

  • Удаление Visual Studio 2015 не удаляет сторонние приложения. Сведения об удалении сторонних приложений, которые были установлены вместе с Visual Studio 2015, см. в статье базы знаний 3060695.

Применение
  • Visual Studio Professional 2015

  • Visual Studio Enterprise

  • Visual Studio Community 2015

  • Visual Studio Express 2015 для Web

  • Visual Studio Express 2015 для Desktop

  • Visual Studio Express 2015 для Windows 10

msdn.microsoft.com

Work in Team Explorer

Team Explorer используется для управления работой, назначенной вам, вашей команде или вашим командным проектам, а также для координации усилий с другими членами команды при разработке проекта. Team Explorer — это подключаемый модуль, который устанавливается вместе с Visual Studio или Eclipse. Используя разные платформы, разработчики и заинтересованные лица могут эффективно взаимодействовать с помощью Team Explorer, подключенного к командным проектам, размещенным в Visual Studio Online или на локальном сервере Team Foundation Server (TFS).

Доступные операции зависят от того, какой элемент управления исходными версиями (система управления версиями Team Foundation (TFVC) или Git) был выбран для управления исходным кодом на этапе создания группового проекта.

Подключаемый модуль Team Explorer для Visual Studio

Team Explorer обеспечивает подключение Visual Studio к командным проектам. Можно управлять исходным кодом, рабочими элементами и сборками. Либо можно создать командный проект.

Домашняя страница с TFVC

Домашняя страница с Git

Некоторые страницы, такие как "Отчеты" и "Документы", отображаются, только если в Team Foundation Server настроены необходимые ресурсы. Другие страницы, например "Моя работа", доступны только в выпуске Visual Studio Enterprise.

Если вам не требуется Visual Studio, но вы хотите подключиться к TFS или получить одну или несколько надстроек Team Foundation, вы можете установить бесплатную версию Visual Studio Community.

Подключаемый модуль Team Explorer для Eclipse

Если вы работаете в Eclipse или на платформе, отличной от Windows, то вы можете установить подключаемый модуль Team Explorer для Eclipse. После установки вы можете открыть общий доступ к проектам Eclipse, добавив их в Team Foundation Server.

Домашняя страница с TFVC (Eclipse)

Домашняя страница с Git (Eclipse)

msdn.microsoft.com


Смотрите также