Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Program Visual Studio umożliwia konfigurowanie kompilacji aplikacji na różnych platformach docelowych (architekturach procesora), w tym Arm64 i innych platformach. Nie musisz pracować z programem Visual Studio na platformie, aby kompilować dla tej platformy docelowej. Aby uzyskać więcej informacji na temat obsługi arm64 w programie Visual Studio, zobacz Visual Studio na urządzeniach opartych na usłudze ARM. Aby uzyskać obsługę 64-bitowej platformy na potrzeby programowania na platformie .NET, zobacz aplikacje 64-bitowe.
Uwaga / Notatka
Program Visual Studio 2022 działa jako aplikacja 64-bitowa. Jest to całkowicie oddzielone od platform, które można przeznaczyć dla projektów w programie Visual Studio. Każdej wersji programu Visual Studio można użyć do obsługi zarówno platform 32-bitowych, jak i 64-bitowych.
Program Visual Studio umożliwia konfigurowanie kompilacji aplikacji pod kątem różnych platform (architektur procesorów), takich jak x86 i x64. Aby uzyskać obsługę 64-bitowej platformy na potrzeby programowania na platformie .NET, zobacz aplikacje 64-bitowe.
Uwaga / Notatka
Program Visual Studio działa jako aplikacja 32-bitowa. Jest to całkowicie oddzielone od platform, które można przeznaczyć dla projektów w programie Visual Studio. Każdej wersji programu Visual Studio można użyć do obsługi zarówno platform 32-bitowych, jak i 64-bitowych.
Platformy docelowe z programem Configuration Manager
Configuration Manager umożliwia szybkie dodanie nowej platformy jako celu w projekcie. Jeśli wybierzesz jedną z platform dołączonych do programu Visual Studio, zostanie skonfigurowana konfiguracja umożliwiająca skompilowanie projektu dla wybranej platformy.
Aby docelowo obsługiwać niektóre platformy w projekcie natywnego języka C++, musisz zainstalować narzędzia do budowy dla danej platformy. Narzędzia kompilacji języka C++ dla platform x86 i x64 są instalowane z domyślnym obciążeniem języka C++. Jeśli używasz innej architektury procesora, takiej jak Arm64, musisz użyć Instalatora programu Visual Studio, aby zainstalować narzędzia kompilacji dla platformy przed kontynuowaniem. Zobacz Modyfikowanie programu Visual Studio. Nie musisz uruchamiać programu Visual Studio bezpośrednio na urządzeniu arm64, aby tworzyć aplikacje przeznaczone dla arm64. W przypadku usługi Arm64 można zainstalować narzędzia kompilacji Arm64 lub narzędzia kompilacji ARM64EC ; zobacz Arm64 Visual Studio.
Dla rozwoju .NET wymagana jest platforma .NET 6 lub nowsza do celowania w platformę Arm64. Zobacz Obsługa platformy .NET dla systemów macOS 11 i Windows 11 dla systemów Arm64 i x64.
Aby skonfigurować projekt przeznaczony dla platform Arm64 i innych platform
Na pasku menu wybierz Kompiluj>Configuration Manager.
Na liście Aktywne platformy rozwiązań wybierz platformę, która ma być rozwiązaniem docelowym, a następnie wybierz przycisk Zamknij .
Jeśli wybrana platforma nie jest wyświetlana na liście Aktywne platformy rozwiązania , wybierz pozycję Nowy. Po zainstalowaniu narzędzi dla określonej platformy będzie można dodać nowe rozwiązanie i konfiguracje projektu przeznaczone dla tej platformy.
Zostanie wyświetlone okno dialogowe Nowa platforma rozwiązania.
Na liście Typ lub wybierz nową platformę , wybierz odpowiednią platformę (architektura procesora); na przykład
ARM64
.Uwaga / Notatka
Jeśli nadasz konfiguracji nową nazwę, może być konieczne zmodyfikowanie ustawień w Project Designer aby skierować na odpowiednią platformę.
Jeśli chcesz skopiować ustawienia z bieżącej konfiguracji platformy, wybierz je, a następnie wybierz przycisk OK .
Aby skonfigurować projekt przeznaczony dla innej platformy
Na pasku menu wybierz Kompiluj>Configuration Manager.
Na liście Aktywne platformy rozwiązań wybierz platformę, która ma być rozwiązaniem docelowym, a następnie wybierz przycisk Zamknij .
Jeśli wybrana platforma nie jest wyświetlana na liście Aktywne platformy rozwiązania , wybierz pozycję Nowy. Po zainstalowaniu narzędzi dla określonej platformy będzie można dodać nowe rozwiązania i konfiguracje projektu przeznaczone dla tej platformy.
Zostanie wyświetlone okno dialogowe Nowa platforma rozwiązania.
Na liście Typ lub wybierz nową platformę , wybierz odpowiednią platformę (architektura procesora); na przykład
x64
.Uwaga / Notatka
Jeśli nadasz konfiguracji nową nazwę, może być konieczne zmodyfikowanie ustawień w Project Designer aby skierować na odpowiednią platformę.
Jeśli chcesz skopiować ustawienia z bieżącej konfiguracji platformy, wybierz je, a następnie wybierz przycisk OK .
Uwaga / Notatka
Nazwa platformy Win32 jest używana dla projektów języka C++ i oznacza x86. Program Visual Studio uwzględnia zarówno platformy na poziomie projektu, jak i platformy na poziomie rozwiązania, a platformy projektów pochodzą z systemów projektów specyficznych dla języka. Projekty języka C++ używają systemów Win32 i x64, ale platformy rozwiązań korzystają z platform x86 i x64. Po wybraniu wersji x86 jako konfiguracji rozwiązania program Visual Studio wybiera platformę Win32 dla projektów języka C++. Aby wyświetlić ustawienia platformy na poziomie projektu i platformy na poziomie rozwiązania, otwórz program Configuration Manager i zanotuj dwa ustawienia platformy. Platforma na poziomie rozwiązania jest wyświetlana na liście rozwijanej Aktywna platforma rozwiązania , a tabela przedstawia platformę na poziomie projektu dla każdego projektu.
Platformy docelowe w interfejsie użytkownika projektanta projektu lub właściwości projektu
Interfejs użytkownika projektanta projektu lub właściwości projektu umożliwia również określanie lokalizacji docelowej różnych platform w projekcie. Jeśli wybranie jednej z platform znajdujących się na liście w oknie dialogowym Nowa platforma rozwiązania nie będzie działać dla danego rozwiązania, możesz utworzyć niestandardową nazwę konfiguracji i zmodyfikować ustawienia we właściwościach projektu , aby określić poprawną platformę.
Wykonanie tego zadania zależy od używanego języka programowania. Aby uzyskać więcej informacji, zobacz następujące linki:
W przypadku projektów Visual Basic zobacz /platform (Visual Basic).
W przypadku projektów języka C# zobacz Strona kompilacji, Project Designer (C#).
Preferuj ustawienie 32-bitowe
Ustawienie Preferuj 32-bitowe na stronie Kompilacja projektanta projektu dla projektów .NET Framework 4.5 lub nowszych obsługuje przypadek, w którym tworzysz AnyCPU
konfigurację, ale chcesz, aby aplikacja była uruchamiana w trybie 32-bitowym, gdy jest wykonywana na platformach obsługujących zarówno tryby 32-bitowe, jak i 64-bitowe. Jeśli zaznaczysz pole wyboru, właściwość kompilacji PlatformTarget
zostanie ustawiona na anycpu32bitpreferred
. Zobacz komentarze dotyczące platformyTarget dla języka C# i /platform dla języka Visual Basic.
Ręczne edytowanie pliku projektu
Czasami należy ręcznie edytować plik projektu w przypadku konfiguracji niestandardowej. Przykładem może być sytuacja, w której nie można określić warunków w IDE, takich jak odwołanie różniące się dla dwóch różnych platform lub zestaw, który musi zostać zarejestrowany dla określonej platformy, aby udostępnić go w środowisku COM. Narzędzie, które przetwarza plik projektu, to MSBuild.
Ostrzeżenie
Ręczne edytowanie pliku projektu C++ używanego w programie Visual Studio nie jest zalecane.
Rejestracja COM
Jeśli kompilujesz zestaw .NET i udostępniasz go modelu COM, program Visual Studio rejestruje zestaw w określonej architekturze platformy, ponieważ istnieją różne lokalizacje rejestru dla każdej architektury platformy (na przykład x86
i x64
). Jeśli zestaw jest już przeznaczony dla określonej platformy, jest używany, ale jeśli rejestrujesz zestaw .NET utworzony dla Any CPU
, MSBuild domyślnie rejestruje go w bieżącym środowisku uruchomieniowym MSBuild. Jeśli tworzysz w programie Visual Studio, to x64
w programie Visual Studio 2022 lub nowszym oraz x86
w programie Visual Studio 2019 i starszych wersjach. Jeśli ustawisz architekturę platformy przy użyciu metod opisanych wcześniej w tym artykule lub określisz inny PlatformTarget
element w pliku projektu, program MSBuild będzie przestrzegał tego podczas rejestrowania. Istnieje właściwość, którą można ustawić, aby zastąpić to zachowanie: RegisterAssemblyMSBuildArchitecture
. Możesz ustawić RegisterAssemblyMSBuildArchitecture
na żądaną architekturę platformy (np. x86
lub x64
), dodając ją do elementu najwyższego poziomu PropertyGroup
w pliku projektu.
Odwoływanie się do zestawów x86 i x64 oraz plików DLL
Być może masz zestaw .NET lub bibliotekę DLL, która ma wersje x86 i x64. Aby skonfigurować projekt do używania tych odwołań, najpierw dodaj odwołanie, a następnie otwórz plik projektu i zmodyfikuj go, aby dodać element ItemGroup
z warunkiem odwołującym się zarówno do konfiguracji, jak i platformy docelowej. Załóżmy na przykład, że binarny, do którego się odnosimy, to ClassLibrary1 i istnieją różne ścieżki dla konfiguracji Debug i Release, a także wersje x86 i x64. Następnie użyj czterech ItemGroup
elementów ze wszystkimi kombinacjami ustawień w następujący sposób:
<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>
Aby uzyskać więcej informacji na temat pliku projektu, zobacz dokumentacja schematu pliku projektu MSBuild.