Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O Visual Studio permite que você configure suas compilações de aplicativos para direcionar diferentes plataformas (arquiteturas de processador), incluindo Arm64 e outras plataformas. Você não precisa estar executando o Visual Studio em uma plataforma para criar para essa plataforma de destino. Para obter mais informações sobre o suporte ao Arm64 no Visual Studio, consulte Visual Studio em dispositivos alimentados por ARM. Para obter suporte à plataforma de 64 bits para desenvolvimento .NET, consulte Aplicativos de 64 bits.
Observação
O Visual Studio 2022 é executado como um aplicativo de 64 bits. Isso é totalmente separado das plataformas que você pode segmentar para seus projetos no Visual Studio. Você pode usar qualquer versão do Visual Studio para direcionar plataformas de 32 bits e 64 bits.
Plataformas de destino com o Configuration Manager
O Configuration Manager fornece uma maneira de adicionar rapidamente uma nova plataforma para ser alvo do seu projeto. Se você selecionar uma das plataformas incluídas no Visual Studio, uma configuração será configurada para criar seu projeto para a plataforma selecionada.
Para direcionar algumas plataformas em um projeto C++ nativo, você precisa instalar as ferramentas de compilação para a plataforma. As ferramentas de compilação C++ para plataformas x86 e x64 são instaladas com a carga de trabalho C++ padrão. Se você estiver visando outra arquitetura de processador, como Arm64, você precisa usar o Visual Studio Installer para instalar as ferramentas de compilação para a plataforma antes de continuar. Consulte Modificar o Visual Studio. Você não precisa executar o Visual Studio em um dispositivo Arm64 para direcionar Arm64. Para o Arm64, pode instalar as ferramentas de construção Arm64 ou as ferramentas de compilação ARM64EC; veja Arm64 Visual Studio.
Para o desenvolvimento .NET, é necessário o .NET 6 ou posterior para a plataforma Arm64. Consulte Suporte .NET para macOS 11 e Windows 11 para Arm64 e x64.
Para configurar um projeto para ter como alvo o Arm64 e outras plataformas
Na barra de menus, escolha Build>Configuration Manager.
Na lista Plataforma de solução ativa , escolha uma plataforma para a solução de destino e, em seguida, escolha o botão Fechar .
Se a plataforma desejada não aparecer na lista Plataforma de solução ativa , escolha Novo. Depois de instalar as ferramentas para uma plataforma específica, você poderá adicionar as novas configurações de solução e projeto destinadas a essa plataforma.
A caixa de diálogo Nova plataforma de solução é exibida.
Na lista Digite ou selecione a nova plataforma , escolha a plataforma desejada (arquitetura do processador); por exemplo,
ARM64.
Observação
Se você der um novo nome à sua configuração, talvez seja necessário modificar as configurações no Project Designer para direcionar a plataforma correta.
Se você quiser copiar as configurações de uma configuração de plataforma atual, escolha-a e, em seguida, escolha o botão OK .
Observação
O nome da plataforma Win32 é usado para projetos C++ e significa x86. O Visual Studio considera plataformas de nível de projeto e plataformas de nível de solução, e as plataformas de projeto vêm dos sistemas de projeto específicos da linguagem. Projetos C++ usam Win32 e x64, mas as plataformas de solução usam x86 e x64. Quando você escolhe x86 como a configuração da solução, o Visual Studio seleciona a plataforma Win32 para projetos C++. Para ver as configurações da plataforma no nível do projeto e da plataforma no nível da solução, abra o Configuration Manager e observe as duas configurações da plataforma. A plataforma de nível de solução é mostrada na lista suspensa Plataforma de solução ativa e a tabela mostra a plataforma de nível de projeto para cada projeto.
Plataformas de destino na interface de utilizador do Project Designer ou das propriedades do projeto
A interface do usuário do Project Designer ou Project Properties também fornece uma maneira de direcionar diferentes plataformas com seu projeto. Se a seleção de uma das plataformas incluídas na lista na caixa de diálogo Nova Plataforma de Solução não funcionar para sua solução, você poderá criar um nome de configuração personalizado e modificar as configurações em Propriedades do Projeto para direcionar a plataforma correta.
A execução dessa tarefa varia de acordo com a linguagem de programação que você está usando. Consulte os seguintes links para obter mais informações:
Para projetos do Visual Basic, consulte /platform (Visual Basic).
Para projetos C#, consulte Página Build, Project Designer (C#).
Prefira a configuração de 32 bits
A configuração Preferir 32 bits na página Build do designer de projeto para projetos do .NET Framework 4.5 ou posterior lida com o caso em que você está criando a AnyCPU configuração, mas deseja que seu aplicativo seja executado no modo de 32 bits quando executado em plataformas que suportam os modos de 32 bits e 64 bits. Se você habilitar a caixa de seleção, a PlatformTarget propriedade build será definida como anycpu32bitpreferred. Consulte os comentários sobre o PlatformTarget para C# e /platform para Visual Basic.
Editando manualmente o arquivo de projeto
Às vezes, você precisa editar manualmente o arquivo de projeto para alguma configuração personalizada. Um exemplo é quando tens condições que não podem ser especificadas no IDE, como uma referência diferente para duas plataformas diferentes ou um assembly que deve ser registado para uma plataforma específica para expô-lo através do COM. A ferramenta que processa o arquivo de projeto é MSBuild.
Atenção
Editar manualmente um arquivo de projeto C++ que você está usando no Visual Studio não é recomendado.
Registo COM
Se você estiver criando um assembly .NET e expondo-o ao COM, o Visual Studio registrará o assembly com uma arquitetura de plataforma específica, já que há locais de registro diferentes para cada arquitetura de plataforma (por exemplo, x86 e x64). Se o assembly já tiver como alvo uma plataforma específica, essa será utilizada, mas se o/a utilizador/a estiver a registar um assembly .NET construído para Any CPU, o MSBuild, por padrão, irá registá-lo para o tempo de execução atual do MSBuild. Se estiveres a programar no Visual Studio, isso está x64 no Visual Studio 2022 e posterior, e x86 no Visual Studio 2019 e anteriores. Se você definir a arquitetura da plataforma usando os métodos descritos anteriormente neste artigo, ou especificar um diferente PlatformTarget no arquivo de projeto, o MSBuild respeitará isso ao se registrar. Há uma propriedade que você pode definir para substituir esse comportamento, RegisterAssemblyMSBuildArchitecture. Você pode definir RegisterAssemblyMSBuildArchitecture a arquitetura de plataforma desejada (como x86 ou x64) adicionando-a a um elemento de nível PropertyGroup superior no arquivo de projeto.
Fazendo referência a assemblies x86 e x64 e DLLs
Você pode ter um assembly .NET ou DLL que tenha versões x86 e x64. Para configurar seu projeto para usar essas referências, primeiro adicione a referência e, em seguida, abra o arquivo de projeto e edite-o para adicionar um ItemGroup com uma condição que faça referência à configuração e à plataforma de destino. Por exemplo, suponha que o binário a que está a referir-se é o ClassLibrary1, e existam caminhos diferentes para as configurações Debug e Release, assim como para as versões x86 e x64. Em seguida, use quatro ItemGroup elementos com todas as combinações de configurações, da seguinte maneira:
<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>
Para obter mais informações sobre o arquivo de projeto, consulte Referência de esquema de arquivo de projeto MSBuild.