Destinazione di Visual Studio 2022 (ARM64) durante la creazione di un'estensione in Visual Studio 2022
Quando si crea un nuovo progetto VSIX usando Visual Studio 2022, il progetto viene creato da un modello destinato a Visual Studio 2022 (Amd64). Se si vuole usare Visual Studio 2022 (ARM64), è necessario modificare il progetto creato.
Seguire questa procedura nel progetto VSIX che deve essere destinato a Visual Studio 2022 (ARM64):
Installare Visual Studio e compilare le estensioni
Installare Visual Studio 2022 dai download di Visual Studio 2022.
Estensioni scritte in un linguaggio .NET
Visual Studio SDK destinato a Visual Studio 2022 per le estensioni gestite è esclusivamente in NuGet:
- Il metapacchetto Microsoft.VisualStudio.Sdk (versioni 17.x) include la maggior parte o tutti gli assembly di riferimento necessari.
- Il pacchetto Microsoft.VSSDK.BuildTools (versioni 17.x) deve essere fatto riferimento dal progetto VSIX in modo che possa compilare un VSIX conforme a Visual Studio 2022.
Estensioni scritte in C++
Visual Studio SDK per le estensioni compilate con C++ è disponibile con Visual Studio SDK installato, come di consueto. Le estensioni devono essere compilate in modo specifico in Visual Studio 2022 SDK e per ARM64.
Aggiungere una destinazione di Visual Studio 2022: ARM64
Aggiungere il supporto di Visual Studio 2022:ARM64 all'estensione seguendo questa procedura.
Per le estensioni di Visual Studio gestite:
- Aprire il progetto VSIX nella soluzione. Questo progetto sarà destinato a Visual Studio 2022 ARM64.
- Verificare che il progetto VSIX venga compilato correttamente. Potrebbe essere necessario aggiungere riferimenti in modo che corrispondano al progetto VSIX originale per risolvere eventuali errori del compilatore.
- Usare i riferimenti al pacchetto 17.x (o versioni precedenti) nel file di progetto di destinazione di Visual Studio 2022. Usare il Gestione pacchetti NuGet o modificare direttamente il file di progetto.
- Il metapacchetto Microsoft.VisualStudio.Sdk (versioni 17.x) include la maggior parte o tutti gli assembly di riferimento necessari.
- Il pacchetto Microsoft.VSSDK.BuildTools (versioni 17.x) deve essere fatto riferimento dal progetto VSIX in modo che possa compilare un VSIX conforme a Visual Studio 2022.
- Se il progetto è già compilato in qualsiasi CPU, non è necessario modificare la configurazione di compilazione perché verrà compilata anche per ARM64 . Tuttavia, se si vuole usare solo ARM64, modificare il progetto in modo da compilare ARM64 invece di Qualsiasi CPU.
- Modificare il file source.extension.vsixmanifest per riflettere la destinazione di Visual Studio 2022. Impostare il
<InstallationTarget>
tag per indicare Visual Studio 2022. Impostare l'elementoProductArchitecture
per indicare un payload ARM64.<InstallationTarget Id="Microsoft.VisualStudio.Community" Version="[17.0,18.0)"> <ProductArchitecture>amd64</ProductArchitecture> </InstallationTarget> <InstallationTarget Id="Microsoft.VisualStudio.Community" Version="[17.0,18.0)"> <ProductArchitecture>arm64</ProductArchitecture> </InstallationTarget>
Nota
Un payload dell'estensione di Visual Studio gestito può essere destinato sia alle installazioni arm64 che a amd64 durante la compilazione per AnyCPU.
Per le estensioni di Visual Studio C++:
- Aprire il progetto VSIX nella soluzione. Questo progetto sarà destinato a Visual Studio 2022 ARM64.
- Verificare che il progetto VSIX venga compilato correttamente. Potrebbe essere necessario aggiungere riferimenti in modo che corrispondano al progetto VSIX originale per risolvere eventuali errori del compilatore.
- Modificare il progetto dalla compilazione per la destinazione ARM64.
- Aggiornare la dipendenza: qualsiasi dipendenza che l'estensione potrebbe avere in un modulo nativo dovrà essere aggiornata a un'immagine ARM64.
- Modificare il file source.extension.vsixmanifest per riflettere la destinazione di Visual Studio 2022. Impostare il
<InstallationTarget>
tag per indicare Visual Studio 2022. Impostare l'elementoProductArchitecture
per indicare un payload ARM64.<InstallationTarget Id="Microsoft.VisualStudio.Community" Version="[17.0,18.0)"> <ProductArchitecture>arm64</ProductArchitecture> </InstallationTarget>
Nota
Un singolo payload dell'estensione di Visual Studio C++ non può essere destinati sia alle installazioni arm64 che a amd64.
A questo punto, si dispone di un'estensione di destinazione di Visual Studio 2022 VSIX. È consigliabile compilare il progetto VSIX di destinazione di Visual Studio 2022.
Impostare il <InstallationTarget>
tag per indicare Visual Studio 2022 usando la visualizzazione Progettazione
Estensione di esempio vsixmanifest: è destinata sia a AMD64 che a ARM64
Come compilare le estensioni di Visual Studio gestite: è destinata solo a ARM64
Aggiungere la configurazione ARM64 al progetto (con estensione csproj).
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|arm64' "> <DebugSymbols>true</DebugSymbols> <DebugType>full</DebugType> <Optimize>false</Optimize> <OutputPath>bin\Debug\</OutputPath> <DefineConstants>DEBUG;TRACE</DefineConstants> <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> <PlatformTarget>ARM64</PlatformTarget> <RuntimeIdentifier>win-arm64</RuntimeIdentifier> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|arm64' "> <DebugType>pdbonly</DebugType> <Optimize>true</Optimize> <OutputPath>bin\Release\</OutputPath> <DefineConstants>TRACE</DefineConstants> <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> <PlatformTarget>arm64</PlatformTarget> <RuntimeIdentifier>win-arm64</RuntimeIdentifier> </PropertyGroup>
Selezionare la destinazione ARM64 (con estensione csproj).
Come compilare le estensioni di Visual Studio C++: è destinata solo a ARM64
Selezionare la piattaforma di destinazione ARM64.
Selezionare il percorso della libreria ARM64.
I file lib necessari sono disponibili in :
[VSInstallatioPath]\VSSDK\VisualStudioIntegration\common\lib\arm64