2011-08-04 13 views
17

Parece que Windows no encuentra ninguno de estos tipos, y no tengo ni idea de qué hacer. Las cosas que he encontrado en MSDN parecen sugerir que están incluidas por defecto, pero no han funcionado en programas Native o CLR.Visual C++ no puede encontrar "tipos de Windows" como, por ejemplo, PVOID, DWORD, ULONG, etc.

Los errores específicos que estoy recibiendo son:

"<Project Name>.cpp(10): error C2065: 'PVOID' : undeclared identifier

"<Project Name>.cpp(10): error C2146: syntax error : missing ';' before identifier 'varname'

"<Project Name>.cpp(10): error C2065: 'varname' : undeclared identifier

Cómo puedo hacer que Visual C++ reconocer estos tipos?

+2

creo que debería incluir si aún no lo ha hecho –

Respuesta

36

Deberá incluir windows.h. Añadir esta línea en la parte superior de su archivo fuente:

#include <windows.h> 
+0

Gracias, esto lo hizo. El código con el que estoy trabajando ni siquiera lo mencionó. – dcpomero

+0

¿Qué pasa si #include también arroja un error? – Rorrik

+2

Tenga en cuenta que no puede hacer esto en una aplicación MFC: '#error WINDOWS.H ya está incluido. Las aplicaciones MFC no deben incluir #include '. Esto se incluye implícitamente a través del 'stdafx.h' predeterminado. – Deanna

4

Tiene que incluir los encabezados de Windows. Los encabezados de Windows están incluidos en los proyectos autogenerados predeterminados, la mayoría de ellos. Si en su lugar comenzó un proyecto vacío, no los tendrá incluidos por defecto.

5

Es necesario incluir un archivo de cabecera para definir este tipo. Vuelva a verificar la documentación o las muestras de las que obtuvo los nombres de los tipos para ver qué encabezados incluir.

+0

Las muestras ni siquiera mencionaron windows.h, a pesar de que tienen PVOID y ULONG esparcidos por todas partes ... Gracias – dcpomero

Cuestiones relacionadas