Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Vanuit Visual Studio .NET tot en met Visual Studio 2013 bevat elke belangrijke release van de C++-compiler en -hulpprogramma's een nieuwe, zelfstandige versie van de Microsoft C Runtime-bibliotheek (CRT). Deze zelfstandige versies van de CRT waren onafhankelijk van en tot verschillende graden, niet compatibel met elkaar. De CRT-bibliotheek die wordt gebruikt door Visual Studio 2012 is bijvoorbeeld versie 11, met de naam msvcr110.dllen de CRT die door Visual Studio 2013 wordt gebruikt, is versie 12, met de naam msvcr120.dll. Vanaf Visual Studio 2015 is dit niet meer het geval. Visual Studio 2015 en nieuwere versies van Visual Studio gebruiken allemaal één Universele CRT.
Universal CRT (UCRT) is een Microsoft Windows-besturingssysteemonderdeel. Het is opgenomen als onderdeel van het besturingssysteem in Windows 10 of hoger en Windows Server 2016 of hoger. Het UCRT is beschikbaar via Windows Update op oudere besturingssystemen die nog steeds uitgebreide ondersteuning hebben. Lokale implementatie van de Universele CRT wordt ondersteund, met enkele beperkingen.
Centrale implementatie
De voorkeursmethode voor het centraal installeren van universal CRT is het gebruik van Microsoft Windows Update. Universal CRT is een aanbevolen update voor alle ondersteunde Microsoft Windows-besturingssystemen, dus de meeste computers installeren deze standaard als onderdeel van het reguliere updateproces. De eerste release van de Universal CRT was KB2999226. Er is een latere update met verschillende bugfixes aangebracht in KB3118401 en er zijn meer updates met verdere bugfixes en nieuwe functies. Zoek naar support.microsoft.com 'Universal C Runtime' of 'Universal CRT' voor recentere updates.
Niet alle Microsoft Windows-computers installeren regelmatig updates door gebruik te maken van Windows Update. Sommige computers installeren mogelijk niet alle aanbevolen updates. Ter ondersteuning van het gebruik van toepassingen die zijn gebouwd met behulp van de C++-toolsets van Visual Studio 2015 en hoger op deze computers, zijn er universal CRT Redistributable-bestanden beschikbaar voor offlinedistributie. Deze herdistribueerbare bestanden kunnen worden gedownload via een van de bovenstaande KB-koppelingen. De Universal CRT Redistributable vereist dat de computer is bijgewerkt naar het huidige service-pack. Het herdistribueerbare voor Windows 7 wordt dus alleen geïnstalleerd op Windows 7 SP1, niet op Windows 7 RTM.
De Universele CRT is een fundamentele afhankelijkheid van de C++-bibliotheken. Met Visual C++ Redistributable (VCRedist) wordt de eerste versie van de Universal CRT (versie 10.0.10240) geïnstalleerd op computers waarop nog geen CRT is geïnstalleerd. Deze versie is voldoende om te voldoen aan de C++-bibliotheekafhankelijkheden. Als uw toepassing afhankelijk is van een recentere versie van de Universele CRT, moet u Windows Update gebruiken om uw computer volledig up-to-date te brengen. Of installeer die versie van het UCRT expliciet. U kunt de Universal C Runtime het beste installeren met Behulp van Windows Update of een MSU voordat u de VCRedist installeert. Deze installatievolgorde kan helpen bij het voorkomen van meerdere vereiste herstarts.
Niet alle besturingssystemen komen in aanmerking voor de meest recente Universal C Runtime via Windows Update. In Windows 10 of Windows 11 komt de centraal geïmplementeerde versie overeen met de versie van het besturingssysteem. Als u de Universal C Runtime verder wilt bijwerken, moet u het besturingssysteem bijwerken. Voor Windows Vista via Windows 8.1 is de meest recente Universele C Runtime gebaseerd op de Windows 10 Jubileumupdate (versie 10.0.14393).
Lokale implementatie
Lokale implementatie van de Universele CRT wordt ondersteund, maar wordt niet aanbevolen om prestatie- en beveiligingsredenen. De DLL's voor lokale distributie zijn opgenomen als onderdeel van de Windows SDK, in de Windows Kits\10\Redist\ucrt\DLLs submap, die afhankelijk is van de computerarchitectuur. De vereiste DLL's bevatten ucrtbase.dll en een set APISet-doorstuurserver-DLL's met de naam api-ms-win-*.dll. De set DLL's die vereist zijn voor elk besturingssysteem varieert. Het wordt ten zeerste aanbevolen dat u alle DLL's opneemt wanneer u lokaal implementeert.
Er zijn twee beperkingen voor lokale implementatie om rekening mee te houden:
In Windows 10 en Windows 11 wordt de Universele CRT in de systeemmap altijd gebruikt, zelfs als een toepassing een toepassing-lokale kopie van de Universele CRT bevat. Het is waar, zelfs wanneer de lokale kopie nieuwer is, omdat de Universele CRT een kernbesturingssysteemonderdeel is in Windows 10 en hoger.
Versies van Windows vóór Windows 8: De Universele CRT kan niet lokaal worden verpakt met een invoegtoepassing, als deze zich ergens anders bevindt dan de hoofdmap van het uitvoerbare app-bestand. De DLL's van de APISet-doorstuurserver kunnen in
ucrtbase.dlldit geval niet worden omgezet. Enkele aanbevolen alternatieve oplossingen zijn:- Statisch linken met de Universele CRT
- Implementeer de Universele CRT centraal of
- Plaats de Universele CRT-bestanden in dezelfde map als de app.
Implementatie in Microsoft Windows XP
Visual Studio 2015- en Visual Studio 2017-toolsets blijven de ontwikkeling van software ondersteunen voor gebruik op Microsoft Windows XP. Er is een versie van de Universele CRT voor Microsoft Windows XP. Het besturingssysteem Microsoft Windows XP bevindt zich niet meer in de basis- of uitgebreide ondersteuning. De centrale implementatie van de Universele CRT op Microsoft Windows XP verschilt dus van andere besturingssystemen.
Wanneer Visual C++ Redistributable is geïnstalleerd in Windows XP, wordt de Universele CRT en alle bijbehorende afhankelijkheden rechtstreeks geïnstalleerd in de systeemmap. Het wordt niet geïnstalleerd of is afhankelijk van een Windows Update. De herdistribueerbare samenvoegmodules, de Microsoft_VC<version>_CRT_<target>.msm bestanden, doen hetzelfde.
Lokale implementatie van universal CRT in Windows XP is hetzelfde als op andere ondersteunde besturingssystemen.
Belangrijk
Runtimebibliotheekondersteuning voor Windows XP is niet meer beschikbaar in de nieuwste Versie van Visual C++ Redistributable voor Visual Studio 2015, 2017, 2019 en 2022. De laatste herdistribueerbaar voor ondersteuning van Windows XP is versie 16.7 (bestandsversie 14.27.29114.0). Als uw Windows XP-apps worden geïmplementeerd met of bijgewerkt naar een latere versie van het herdistribueerbare, worden de apps niet uitgevoerd. Zie Programma's configureren voor Windows XPvoor meer informatie en hoe u een versie van de herdistribueerbare versie kunt krijgen die Ondersteuning biedt voor Windows XP.