web-dev-qa-db-fra.com

erreur MSB8040: des bibliothèques à spectre atténué sont requises pour ce projet

J'ai un problème que je ne peux pas résoudre. Mon code:

#include "ntddk.h"
#include <stdlib.h>

NTSTATUS DriverEntry(IN PDRIVER_OBJECT theDriverObject,
    IN PUNICODE_STRING theRegistryPath)
{
    DbgPrint("Hello World!");
    return STATUS_SUCCESS;
}

Mon objectif est d'exécuter ce programme sans aucun problème. Message d'erreur:

  • erreur MSB8040: des bibliothèques à atténuation de spectre sont requises pour ce projet. Installez-les à partir du programme d'installation de Visual Studio (onglet Composants individuels) pour tous les jeux d'outils et architectures utilisés. En savoir plus: https://aka.ms/Ofhn4c

    J'ai ajouté quelques bibliothèques mais l'erreur persiste. Jeux d'outils ajoutés:

  • C++ ATL pour la dernière version des outils de construction 142 (ARM)

  • C++ ATL pour les derniers outils de build version 142 (ARM64)
  • C++ ATL pour la dernière version des outils de construction (x86 i x64)
  • C++ ATL pour la dernière version des outils de build 142 avec des contre-mesures pour la vulnérabilité Spectre (ARM)
  • C++ ATL pour la dernière version des outils de build 142 avec des contre-mesures pour la vulnérabilité Spectre (ARM64)
  • C++ pour la dernière version des outils de build 142 avec des contre-mesures pour la vulnérabilité Spectre (x86 i x64)

Quelqu'un pourrait-il me guider étape par étape pour le résoudre?

2
Anonymous-User

Ceci: https://devblogs.Microsoft.com/cppblog/spectre-mitigations-in-msvc et le /Qspectre option de compilation, est probablement ce que vous cherchez? (Notez que vous auriez besoin de recompiler tout le code, y compris les bibliothèques que vous utilisez, avec / Qspectre pour profiter pleinement).

2
Jesper Juhl