Condividi tramite


Installare wdk usando WinGet

È possibile usare lo strumento Gestione pacchetti Windows (WinGet) per installare o aggiornare Windows Driver Kit nel computer, insieme alle relative dipendenze, ad esempio Visual Studio e Windows Software Development Kit, tutte dalla riga di comando.

Fare riferimento alla documentazione di installazione di WinGet se è necessaria assistenza per assicurarsi che WinGet sia installato e configurato correttamente.

Installare la versione più recente di WDK con WinGet

La versione più recente di WDK è 10.0.26100.1591. Richiede Visual Studio 2022 e Windows SDK 10.0.26100.1 Per altre informazioni, vedi Controllo delle versioni del kit.

Passaggio 1: Installare Visual Studio 2022

WdK richiede Visual Studio 2022 con il carico di lavoro Sviluppo di applicazioni desktop con C++ installato, insieme agli strumenti di compilazione vs 2022 C++ e ai corrispondenti componenti spectre con mitigazione spectre di VISUAL 2022 C++ per ogni architettura per cui si intende compilare i driver.

È possibile usare WinGet per installare Visual Studio 2022 con tutti i carichi di lavoro e i componenti necessari per lo sviluppo di driver. A tale scopo, è necessario un file di configurazione dell'installazione di Visual Studio. Creare un wdk.vsconfig file con il contenuto seguente e prendere nota del percorso:

{
  "version": "1.0",
  "components": [
    "Microsoft.Component.MSBuild",
    "Microsoft.VisualStudio.Component.CoreEditor",
    "Microsoft.VisualStudio.Component.NuGet",
    "Microsoft.VisualStudio.Component.Roslyn.Compiler",
    "Microsoft.VisualStudio.Component.TextTemplating",
    "Microsoft.VisualStudio.Component.VC.ASAN",
    "Microsoft.VisualStudio.Component.VC.ATL.ARM64.Spectre",
    "Microsoft.VisualStudio.Component.VC.ATL.ARM64",
    "Microsoft.VisualStudio.Component.VC.ATL.Spectre",
    "Microsoft.VisualStudio.Component.VC.ATL",
    "Microsoft.VisualStudio.Component.VC.ATLMFC.Spectre",
    "Microsoft.VisualStudio.Component.VC.ATLMFC",
    "Microsoft.VisualStudio.Component.VC.CoreIde",
    "Microsoft.VisualStudio.Component.VC.MFC.ARM64.Spectre",
    "Microsoft.VisualStudio.Component.VC.MFC.ARM64",
    "Microsoft.VisualStudio.Component.VC.Redist.14.Latest",
    "Microsoft.VisualStudio.Component.VC.Runtimes.ARM64.Spectre",
    "Microsoft.VisualStudio.Component.VC.Runtimes.ARM64EC.Spectre",
    "Microsoft.VisualStudio.Component.VC.Runtimes.x86.x64.Spectre",
    "Microsoft.VisualStudio.Component.VC.Tools.ARM64",
    "Microsoft.VisualStudio.Component.VC.Tools.ARM64EC",
    "Microsoft.VisualStudio.Component.VC.Tools.x86.x64",
    "Microsoft.VisualStudio.Component.Windows10SDK",
    "Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Core",
    "Microsoft.VisualStudio.Workload.CoreEditor",
    "Microsoft.VisualStudio.Workload.NativeDesktop"
  ]
}

A seconda dell'edizione che si vuole installare, sarà necessario fornire winget un set diverso di parametri del programma di installazione insieme al percorso del file vsconfig appena creato per personalizzare l'installazione.

Attenzione

È necessario fornire un percorso assoluto al file wdk.vsconfig nei comandi seguenti. In caso contrario, WinGet potrebbe non riuscire a installare Visual Studio durante la segnalazione dell'esito positivo.

Visual Studio Community 2022:

winget install --source winget --exact --id Microsoft.VisualStudio.2022.Community --override "--passive --config <vsconfig-folder>\wdk.vsconfig"

Visual Studio Professional 2022:

winget install --source winget --exact --id Microsoft.VisualStudio.2022.Professional --override "--passive --config <vsconfig-folder>\wdk.vsconfig""

Visual Studio Enterprise 2022:

winget install --source winget --exact --id Microsoft.VisualStudio.2022.Enterprise --override "--passive --config <vsconfig-folder>\wdk.vsconfig"

Per altri dettagli, vedere la documentazione di Visual Studio su Come usare WinGet per installare o modificare Visual Studio .

Passaggio 2: Installare Windows SDK e WDK

È possibile installare Windows SDK e WDK da WinGet eseguendo i comandi seguenti:

Windows SDK:

winget install --source winget --exact --id Microsoft.WindowsSDK.10.0.26100 --log $env:USERPROFILE/Desktop/sdk-install.log

Windows WDK:

winget install --source winget --exact --id Microsoft.WindowsWDK.10.0.26100 --log $env:USERPROFILE/Desktop/wdk-install.log

Se si usa VS 17.11.0 o versione successiva, deselezionare la casella di controllo Installa estensione.

Passaggio 3: Installare l'estensione WDK di Visual Studio

Nota

Questa sezione è solo un'applicazione quando si usa Visual Studio precedente alla versione 17.11.0

Dopo aver installato WDK dalla riga di comando, sarà necessario installare separatamente l'estensione Windows Driver Kit di Visual Studio per poter compilare e testare i driver. Per impostazione predefinita, l'estensione si trova in %ProgramFiles(x86)%\Windows Kits\10\Vsix\VS2022\10.0.26100.0\%PROCESSOR_ARCHITECTURE%\WDK.vsix.

Uso del prompt dei comandi:

for /f "usebackq tokens=*" %i in (`"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -nologo -latest -products * -property enginePath`) do (
  "%i\VSIXInstaller.exe" "%ProgramFiles(x86)%\Windows Kits\10\Vsix\VS2022\10.0.26100.0\%PROCESSOR_ARCHITECTURE%\WDK.vsix"
)

Tramite PowerShell:

& $(& "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe" -nologo -latest -products * -property enginePath | Join-Path -ChildPath 'VSIXInstaller.exe') "${env:ProgramFiles(x86)}\Windows Kits\10\Vsix\VS2022\10.0.26100.0\${env:PROCESSOR_ARCHITECTURE}\WDK.vsix"

Installare altre versioni di WDK con WinGet

È possibile installare più kit per diverse versioni di Windows da WinGet.

Nota

Per le versioni 22000 (destinate a Windows 11 versione 21H2) e versioni precedenti, è necessario installare una versione precedente di Visual Studio. Vedere Altri download > di WDK Passaggio 1: Installare Visual Studio per trovare la versione di Visual Studio necessaria per la versione di WDK da installare.

È possibile cercare altre versioni del kit disponibili usando il winget search comando .

Windows SDK:

winget search --source winget --id Microsoft.WindowsSDK

Windows WDK:

winget search --source winget --id Microsoft.WindowsWDK

Ogni comando restituirà una tabella con tutte le versioni di SDK/WDK disponibili in WinGet. Ad esempio, quando si cercano tutte le versioni di WDK disponibili, verrà visualizzata una tabella simile alla seguente:

Name                                        Id                              Version        Source
--------------------------------------------------------------------------------------------------
Windows Driver Kit - Windows 10.0.22621.2428 Microsoft.WindowsWDK.10.0.22621 10.1.22621.2428 winget
Windows Driver Kit - Windows 10.1.22000.1    Microsoft.WindowsWDK.10.0.22000 10.1.22000.1    winget
Windows Driver Kit                           Microsoft.WindowsWDK.10.0.19041 10.1.19041.685  winget
Windows Driver Kit - Windows 10.0.26100.1    Microsoft.WindowsWDK.10.0.26100 10.1.26100.1    winget

È quindi possibile installare la combinazione necessaria di kit per uno specifico <kit-version> usando winget install:

Windows SDK:

winget install --source winget --exact --id Microsoft.WindowsSDK.10.0.<kit-version>

Windows WDK:

winget install --source winget --exact --id Microsoft.WindowsWDK.10.0.<kit-version>

Nota

Se la versione di Windows Driver Kit che stai cercando non è disponibile in WinGet, dovrai scaricarla e installarla separatamente da Altri download WDK.

A meno che non sia già installata l'estensione WDK di Visual Studio da un WDK più recente, sarà necessario installarla manualmente. Si trova per impostazione predefinita %ProgramFiles(x86)%\Windows Kits\10\Vsix\<vs-version>\10.0.<kit-version>.0\WDK.vsix in per le versioni del kit 22621 e successive o %ProgramFiles(x86)%\Windows Kits\10\Vsix\<vs-version>\WDK.vsix per le versioni del kit 22000 e versioni precedenti.

Individuare prima la cartella per l'oggetto <vs-version> che verrà usato (VS2022 per le versioni 22621 e successive, VS2019 per le versioni 18362 a 22000). Se la cartella contiene più cartelle con controllo delle versioni, individuare la cartella all'interno con il numero di versione più recente. Prendere nota di questo percorso come <wdk-vsix-folder> se si vuole installare l'estensione dalla riga di comando.

Uso del prompt dei comandi:

for /f "usebackq tokens=*" %i in (`"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -nologo -latest -products * -property enginePath`) do (
  "%i\VSIXInstaller.exe" "<wdk-vsix-folder>\WDK.vsix"
)

Tramite PowerShell:

& $(& "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe" -nologo -latest -products * -property enginePath | Join-Path -ChildPath 'VSIXInstaller.exe') "<wdk-vsix-folder>\WDK.vsix"

Installare un ambiente di sviluppo driver completo usando un file di configurazione WinGet

Usando un file di configurazione WinGet, è possibile configurare un nuovo computer per lo sviluppo di driver con un intervento manuale minimo.

Per praticità, viene fornito un file di configurazione per l'installazione di Windows 11, versione 24H2 WDK e le relative dipendenze. Questa configurazione configurerà i componenti seguenti:

  • Visual Studio 2022 Community.
  • Visual Studio richiede flussi di lavoro e componenti per lo sviluppo di driver.
  • Windows 11, versione 24H2 SDK.
  • Windows 11, versione 24H2 WDK.
  • Estensione WDK di Visual Studio.

Anche se l'uso di un file di descrizione della configurazione funziona meglio per il provisioning di un nuovo computer, è possibile usarlo anche se alcuni dei componenti sono già installati e WinGet tenterà di installare solo i componenti mancanti.

Suggerimento

È possibile scaricare e installare direttamente il file di configurazione di WDK usando PowerShell. Dopo aver installato la versione più recente di WinGet, è possibile eseguire i comandi seguenti:

# Open a new PowerShell terminal if needed
powershell

# Download configuration file to install WDK with VS 2022 Community
Invoke-WebRequest -Uri 'https://raw.githubusercontent.com/microsoft/Windows-driver-samples/main/configuration.dsc.yaml' -OutFile configuration.dsc.yaml

# Install VS, SDK, WDK and WDK VS extension using the configuration file
winget configure -f configuration.dsc.yaml

Passaggio 1: Configurare WinGet

Assicurarsi di avere installato WinGet versione 1.6 o successiva nel computer di cui si vuole eseguire il provisioning. È possibile farlo eseguendo winget --version sul terminale e verificando che il numero di versione di output sia v1.6.2631 o superiore. In caso contrario, o se il terminale genera un errore che indica che il comando non esiste, sarà necessario installare la versione più recente di WinGet prima di procedere.

Passaggio 2: Scaricare il file di configurazione di WDK

Il file di descrizione della configurazione può essere scaricato da qui. Salvare il file con configuration.dsc.yml nome e prendere nota del percorso.

Suggerimento

Il file di configurazione fornito installerà l'edizione Community di Visual Studio 2022. Se è necessaria un'edizione diversa, è possibile modificare Microsoft.VisualStudio.2022.Community gli Microsoft.VisualStudio.Product.Community ID prodotto con ID diversi per l'edizione da installare (per Professional: Microsoft.VisualStudio.2022.Professional e Microsoft.VisualStudio.Product.Professional; per Enterprise: Microsoft.VisualStudio.2022.Enterprise e Microsoft.VisualStudio.Product.Enterprise).

Passaggio 3A: Eseguire la configurazione di WinGet per installare il file di configurazione di WDK

In una riga di comando nella directory in cui è stato salvato il file di configurazione WDK, eseguire il comando seguente per configurare il computer usando tale file:

winget configure -f configuration.dsc.yaml

Passaggio 3B: Usare Dev Home per installare il file di configurazione di WDK

In alternativa, se è installato Dev Home , è possibile usarlo per configurare il computer. Selezionare "Configurazione computer" dalla barra laterale, quindi "Configura ambiente di sviluppo" > "File di configurazione" nella schermata principale per aprire il file di configurazione WDK scaricato. Dopo aver verificato che si vuole usare tale file per configurare il computer, l'installazione procederà e, al termine, è necessario disporre di un ambiente pronto per lo sviluppo di driver.

Vedi anche