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.
Met Visual Studio kunt u builds van uw toepassing instellen voor verschillende platforms (processorarchitecturen), waaronder Arm64 en andere platforms. U hoeft Visual Studio niet uit te voeren op een platform om te bouwen voor dat doelplatform. Zie Visual Studio op ARM-apparaten voor meer informatie over Arm64-ondersteuning in Visual Studio. Raadpleeg 64-bits toepassingen voor ondersteuning van 64-bits platforms bij .NET-ontwikkeling.
Opmerking
Visual Studio 2022 wordt uitgevoerd als een 64-bits toepassing. Dit staat volledig los van de platforms waarop u zich kunt richten voor uw projecten in Visual Studio. U kunt elke versie van Visual Studio gebruiken om zowel 32-bits als 64-bits platforms te targeten.
Met Visual Studio kunt u builds van uw toepassing instellen voor verschillende platforms (processorarchitecturen), zoals x86 en x64. Raadpleeg 64-bits toepassingen voor ondersteuning van 64-bits platforms bij .NET-ontwikkeling.
Opmerking
Visual Studio wordt uitgevoerd als een 32-bits toepassing. Dit staat volledig los van de platforms waarop u zich kunt richten voor uw projecten in Visual Studio. U kunt elke versie van Visual Studio gebruiken om zowel 32-bits als 64-bits platforms te targeten.
Richt doelplatforms aan met Configuratiebeheerder
Configuration Manager biedt een manier om snel een nieuw platform toe te voegen aan uw project. Als u een van de platformen selecteert die zijn opgenomen in Visual Studio, wordt er een configuratie ingesteld om uw project voor het geselecteerde platform te bouwen.
Als u zich wilt richten op sommige platforms in een systeemeigen C++-project, moet u de buildhulpprogramma's voor het platform installeren. C++ buildhulpprogramma's voor x86- en x64-platforms worden geïnstalleerd met de standaard-C++-workload. Als u zich richt op een andere processorarchitectuur, zoals Arm64, moet u het Installatieprogramma van Visual Studio gebruiken om de buildhulpprogramma's voor het platform te installeren voordat u doorgaat. Zie Visual Studio wijzigen. U hoeft Visual Studio niet uit te voeren op een Arm64-apparaat om arm64 te targeten. Voor Arm64 kunt u Arm64-buildhulpprogramma's of ARM64EC buildhulpprogramma's installeren; zie Arm64 Visual Studio.
Voor .NET-ontwikkeling is .NET 6 of hoger vereist om het Arm64-platform te targeten. Zie .NET-ondersteuning voor macOS 11 en Windows 11 voor Arm64 en x64.
Een project configureren gericht op Arm64 en andere platforms
Kies Build>Configuration Manager op de menubalk.
Kies in de lijst met actieve oplossingsplatforms een platform voor de oplossing waarop u zich wilt richten en kies vervolgens de knop Sluiten .
Als het gewenste platform niet wordt weergegeven in de lijst met actieve oplossingsplatformen , kiest u Nieuw. Nadat u de hulpprogramma's voor een bepaald platform hebt geïnstalleerd, kunt u de nieuwe oplossing en projectconfiguraties toevoegen die op dat platform zijn gericht.
Het dialoogvenster Platform nieuwe oplossing wordt weergegeven.
Kies in het type of selecteer de nieuwe platformlijst het gewenste platform (processorarchitectuur); bijvoorbeeld
ARM64.
Opmerking
Als u uw configuratie een nieuwe naam geeft, moet u mogelijk de instellingen in projectontwerper wijzigen om het juiste platform te bereiken.
Als u de instellingen uit een huidige platformconfiguratie wilt kopiëren, kiest u deze en kiest u vervolgens de knop OK .
Een project configureren om zich op een ander platform te richten
Kies Build>Configuration Manager op de menubalk.
Kies in de lijst met actieve oplossingsplatforms een platform voor de oplossing waarop u zich wilt richten en kies vervolgens de knop Sluiten .
Als het gewenste platform niet wordt weergegeven in de lijst met actieve oplossingsplatformen , kiest u Nieuw. Nadat u de hulpprogramma's voor een bepaald platform hebt geïnstalleerd, kunt u de nieuwe oplossing en projectconfiguraties toevoegen die gericht zijn op dat platform.
Het dialoogvenster Platform nieuwe oplossing wordt weergegeven.
Kies in het type of selecteer de nieuwe platformlijst het gewenste platform (processorarchitectuur); bijvoorbeeld
x64.Opmerking
Als u uw configuratie een nieuwe naam geeft, moet u mogelijk de instellingen in projectontwerper wijzigen om het juiste platform te bereiken.
Als u de instellingen uit een huidige platformconfiguratie wilt kopiëren, kiest u deze en kiest u vervolgens de knop OK .
Opmerking
De Win32-platformnaam wordt gebruikt voor C++-projecten en betekent x86. Visual Studio beschouwt zowel platformen op projectniveau als platformen op oplossingsniveau en de projectplatformen zijn afkomstig van de taalspecifieke projectsystemen. C++ projecten maken gebruik van Win32 en x64, maar de oplossingsplatformen gebruiken x86 en x64. Wanneer u x86 als oplossingsconfiguratie kiest, selecteert Visual Studio het Win32-platform voor C++-projecten. Als u zowel platforminstellingen op projectniveau als platforminstellingen op oplossingsniveau wilt zien, opent u Configuration Manager en noteert u de twee platforminstellingen. Het platform op oplossingsniveau wordt weergegeven in de vervolgkeuzelijst Actief oplossingsplatform en de tabel toont het platform op projectniveau voor elk project.
Doelplatforms in de gebruikersinterface van Projectontwerper of Projecteigenschappen
De UI Projectontwerper of Projecteigenschappen biedt ook een manier om uw project op verschillende platforms te richten. Als u een van de platforms selecteert die zijn opgenomen in de lijst in het dialoogvenster Nieuw oplossingsplatform , werkt dit niet voor uw oplossing, kunt u een aangepaste configuratienaam maken en de instellingen in Projecteigenschappen wijzigen om het juiste platform te bereiken.
Het uitvoeren van deze taak varieert op basis van de programmeertaal die u gebruikt. Zie de volgende koppelingen voor meer informatie:
Zie de pagina Build, Project Designer (C#) voor C#-projecten.
Voorkeur voor 32-bits instelling
De instelling Prefer 32-bits op de pagina Build van de projectontwerper voor .NET Framework 4.5 of hoger verwerkt het geval waarin u de AnyCPU configuratie bouwt, maar u wilt dat uw toepassing wordt uitgevoerd in de 32-bits modus wanneer deze wordt uitgevoerd op platforms die zowel de 32-bits als de 64-bits modi ondersteunen. Als u het selectievakje inschakelt, wordt de PlatformTarget build-eigenschap ingesteld op anycpu32bitpreferred. Zie opmerkingen over platformtarget voor C# en /platform voor Visual Basic.
Het projectbestand handmatig bewerken
Soms moet u het projectbestand handmatig bewerken voor een aangepaste configuratie. Een voorbeeld is wanneer u voorwaarden hebt die niet kunnen worden opgegeven in de IDE, zoals een verwijzing die verschilt voor twee verschillende platforms of een assembly die moet worden geregistreerd voor een bepaald platform om deze beschikbaar te maken voor COM. Het hulpprogramma waarmee het projectbestand wordt verwerkt, is MSBuild.
Waarschuwing
Handmatig bewerken van een C++-projectbestand dat u in Visual Studio gebruikt, wordt niet aanbevolen.
COM-registratie
Als u een .NET-assembly bouwt en deze beschikbaar maakt voor COM, registreert Visual Studio de assembly met een bepaalde platformarchitectuur, omdat er verschillende registerlocaties zijn voor elke platformarchitectuur (bijvoorbeeld x86 en x64). Als uw assembly al is gericht op een specifiek platform, wordt dat gebruikt. Maar als u een .NET-assembly registreert die is gebouwd voor Any CPU, dan registreert MSBuild deze standaard voor de huidige runtime van MSBuild. Als u in Visual Studio bouwt, is x64 dat in Visual Studio 2022 en hoger en x86 in Visual Studio 2019 en eerder. Als u de platformarchitectuur instelt met behulp van de methoden die eerder in dit artikel zijn beschreven of een andere PlatformTarget methode opgeeft in het projectbestand, respecteert MSBuild dat bij het registreren. Er is een eigenschap die u kunt instellen om dit gedrag te overschrijven, RegisterAssemblyMSBuildArchitecture. U kunt instellen RegisterAssemblyMSBuildArchitecture op de gewenste platformarchitectuur (zoals x86 of x64) door deze toe te voegen aan een element op het hoogste niveau PropertyGroup in het projectbestand.
Naar x86- en x64-assemblies en DLLs verwijzen
Mogelijk hebt u een .NET-assembly of DLL met zowel x86- als x64-versies. Als u uw project wilt instellen om deze verwijzingen te gebruiken, voegt u eerst de verwijzing toe en opent u het projectbestand en bewerkt u het om een ItemGroup voorwaarde toe te voegen die verwijst naar zowel de configuratie als het doelplatform. Stel dat het binaire bestand waarnaar u verwijst ClassLibrary1 is en dat er verschillende paden zijn voor foutopsporings- en releaseconfiguraties, evenals x86- en x64-versies. Gebruik vervolgens vier ItemGroup elementen met alle combinaties van instellingen, als volgt:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.0</TargetFramework>
<Platforms>AnyCPU;x64;x86</Platforms>
</PropertyGroup>
<ItemGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64'">
<Reference Include="ClassLibrary1">
<HintPath>..\..\ClassLibrary1\ClassLibrary1\bin\x64\Debug\netstandard2.0\ClassLibrary1.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64'">
<Reference Include="ClassLibrary1">
<HintPath>..\..\ClassLibrary1\ClassLibrary1\bin\x64\Release\netstandard2.0\ClassLibrary1.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86'">
<Reference Include="ClassLibrary1">
<HintPath>..\..\ClassLibrary1\ClassLibrary1\bin\x86\Debug\netstandard2.0\ClassLibrary1.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86'">
<Reference Include="ClassLibrary1">
<HintPath>..\..\ClassLibrary1\ClassLibrary1\bin\x86\Release\netstandard2.0\ClassLibrary1.dll</HintPath>
</Reference>
</ItemGroup>
</Project>
Zie de referentie voor het MSBuild-projectbestandsschema voor meer informatie over het projectbestand.