Ne peut pas ouvrir le fichier include: 'ntddk.h'
Je suis tenté d'entrer dans le développement de pilotes (file d'attente "ne pas faire")
J'ai été à la recherche à cette page msdn et après l'installation de la WDK (Windows Driver Kit) 10 je suis toujours incapable de compiler l'exemple qu'ils utilisent sur cette page.
J'ai regardé d'autres AINSI en question mais je suis incapable de trouver le répertoire d'installation de l'WDK. Lorsque je tente de lancer le setup, je suis accueilli par ceci:
Comment puis-je résoudre ce problème?
Tout d'abord - le fichier sur votre ordinateur, utilisez l'outil de recherche pour trouver le
Désolé, je l'ai mentionné que de rechercher le fichier ne donne aucun résultat. Je trouve cela bizarre car il dit la WDK est installé.
Vous avez manqué la première chose que vous voyez lorsque vous regardez à travers TELLEMENT de questions. Le titre de propriété. @HansPassant
J'ai dû manuellement au chalut pour le fichier, mais il était dans
Cela semble être un grave problème avec la dernière WDK. J'ai installé 10.0.14393.0 (frais) et même la création d'un vide pilote en mode noyau de projet ne parvient pas à configurer les répertoires include correctement. La main de l'artisanat, il ne semble pas aider, car il se plaint de 10.0.14393.0 n'étant pas installé. Ou n'avez-vous eu de chance..?
ntddk.h
fichier. Généralement, vous avez besoin de configurer votre projet pour pointer vers le DDK - c'est une configuration de projet. Vous n'avez pas fourni beaucoup d'informations de limitation "le DDK semble être installés" ici.Désolé, je l'ai mentionné que de rechercher le fichier ne donne aucun résultat. Je trouve cela bizarre car il dit la WDK est installé.
Vous avez manqué la première chose que vous voyez lorsque vous regardez à travers TELLEMENT de questions. Le titre de propriété. @HansPassant
J'ai dû manuellement au chalut pour le fichier, mais il était dans
c:\program files (x86)\Windows Kits\10\Include\10.0.10586.0\km
. Vous avez probablement manque quelques paramètres dans l'exemple de l'obtenir pour fonctionnerCela semble être un grave problème avec la dernière WDK. J'ai installé 10.0.14393.0 (frais) et même la création d'un vide pilote en mode noyau de projet ne parvient pas à configurer les répertoires include correctement. La main de l'artisanat, il ne semble pas aider, car il se plaint de 10.0.14393.0 n'étant pas installé. Ou n'avez-vous eu de chance..?
OriginalL'auteur Ezzy | 2016-03-03
Vous devez vous connecter pour publier un commentaire.
Vous devez ajouter WDK les en-têtes de chemin d'accès à votre vcxproj inclure des répertoires:
vcxproj propriétés -> C/C++ -> Général> d'autres Répertoires include
P. S.: assurez-vous d'installer le SDK 10 avec WDK 10.
P. P. S: Sans SDK, vous obtiendrez
Cannot open include file: 'ntdef.h'
erreurOriginalL'auteur Sasha Zezulinsky
Règle de pouce
Lorsque vous avez besoin pour construire avec la dernière (ou spécifique), la version de WDK, vérifiez que la version correspondante de Gagner SDK est installé.
Cause suspectée
Dans le processus de débogage de la question, il est apparu que (à cause de la version du SDK) processus de construction a été paramètre $(LatestTargetPlatformVersion) à 10.0.10586. Alors que les installé WDK fournit nécessaires versions de fichiers de build uniquement pour 10.0.14393 version. Il semble que ce soit un peu un comportement intentionnel.
Mon cas
Dans mon cas, c'était en raison de différentes versions de windows SDK et WDK.
J'ai eu SDK 10.0.10586 et WDK 10.0.14393.
L'installation du SDK 10.0.14393 résolu le problème pour moi.
Note de côté
Gagner SDK est installé avec mise en page par défaut de VS2015, mais pour quelque raison il ne peut pas faire les mises à jour dans le processus de VS les mises à jour.
Les versions de la WSDK et WDK ne correspondent pas toujours.
OriginalL'auteur IsXanDe
Il est un des macros $(DDK_INC_PATH) qui peut être ajouté à inclure des répertoires de votre projet (vcxproj propriétés -> Répertoires de VC++- > Inclure des Répertoires)
OriginalL'auteur Andrew Ivanov