Question

J'essaie d'appeler certaines fonctions WFP à partir d'une bibliothèque de classe C ++ CLR (nouveau projet -> Visual C ++ -> CLR -> Bibliothèque de classe)

Code:

#include <windows.h>
#include <fwpmu.h>
#pragma comment (lib, "fwpuclnt.lib")

Avec seulement cela, beaucoup incluent les fichiers du SDK Windows ne parviennent pas à compiler. Qu'est-ce que je rate?

Exemple:

Error 12 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int (program files)\microsoft sdks\windows\v7.0a\include\fwptypes.h 336 1 testlib

Éditer:

J'ai trouvé la solution, c'est un bogue dans certains fichiers d'en-tête: http://social.msdn.microsoft.com/forums/en/wfp/thread/8fd93a3d-a794-4233-9ff7-09b89eed6b1f

Et un conflit entre le CLR et un autre en-tête: http://social.msdn.microsoft.com/forums/en/vcgeneral/thread/92c473d6-c963-44fa-9150-6c6af502112b

Était-ce utile?

La solution

J'ai trouvé la solution, c'est un bogue dans certains fichiers d'en-tête: http://social.msdn.microsoft.com/forums/en/wfp/thread/8fd93a3d-a794-4233-9ff7-09b89eed6b1f

Et un conflit entre le CLR et un autre en-tête: http://social.msdn.microsoft.com/forums/en/vcgeneral/thread/92c473d6-c963-44fa-9150-6c6af502112b

Autres conseils

J'ai également eu cette erreur, mais la réponse de longue date fournie par IZM ne l'a pas résolue pour moi, malheureusement. J'ai également essayé de réparer et de réinstaller Visual Studio, entre autres, en vain.

Dans mon cas, ce qui a finalement corrigé Réinstallez le SDK Windows pour 8.0. Pour une raison quelconque, le fichier manquait dans le C:\Program Files (x86)\Windows Kits\8.0\Include\um Répertoire dans lequel il aurait dû être. Le fichier était dans divers autres endroits pour d'autres SDK Windows (8.1 et 10), mais pas dans celui utilisé par le projet.

Je ne sais pas pourquoi il manquait, mais j'ai découvert qu'il n'était pas là en regardant les propriétés du projet C ++ pertinent et en voyant ce que ses hérités incluent les options de répertoires évaluées, qui ont fini par être le dossier de kit 8.0. Je pensais que c'était là depuis que j'ai vu le fichier dans d'autres dossiers, mais ce n'était pas dans le bon dossier, probablement parce que quelque chose a gâché les fichiers SDK 8.0 pour moi.

J'espère que cela aide quelqu'un d'autre là-bas à vivre l'erreur ou ceux similaires.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top