2010-04-15 13 views
7

Estoy tratando de compilar un programa. Saqué un CD de un libro que usa directx para representar objetos en 3D. Cuando pulso compilar me sale el siguiente error'dxerr9.h': Ningún archivo o directorio

C1083: Cannot open include file: 'dxerr9.h': No such file or directory 

estoy usando VC++ 2008 Express Edition y estoy corriendo fuera de Vista. Fui a la siguiente carpeta

[editar]

C:\Program Files (x86)\Microsoft DirectX SDK (February 2010)\Include 

yo era capaz de encontrar dxerr.h en la carpeta y la ruta también está siendo incluido en el VC++ ficha Directorios en la ventana de opciones. no sé qué está pasando.

+0

En cuanto a su última edición: dxerr.h o dxerr9.h? Si fue capaz de encontrar dxerr.h pero su código quiere dxerr9.h, entonces creo que veo el problema. ;) –

Respuesta

10

Parece que su programa fue escrito usando la versión anterior de DirectX SDK. El 'dxerr9.h' está presente al menos en "Microsoft DirectX 9.0 SDK (diciembre de 2004)", pero está ausente al menos en "Microsoft DirectX SDK (agosto de 2009)".

+0

Fui a la carpeta includes y pude encontrar un archivo de encabezado llamado Dxerr.h. podría ser lo mismo. debería probarlo en su lugar – numerical25

+0

Sí, se renombró a DxErr.h en uno de los últimos SDK de DirectX. A las funciones también les falta el 9 al final, por lo que es posible que tengas que cambiar eso también. –

1

Creo que VitalyVal tenía razón. acerca de lo siguiente:

Parece que su programa fue escrito usando una versión anterior de DirectX SDK. El 'dxerr9.h' está presente al menos en "Microsoft DirectX 9.0 SDK (diciembre de 2004)", pero está ausente al menos en "Microsoft DirectX SDK (agosto de 2009)".

Creo que los archivos ahora van por dxerr.h. Eliminé el 9 en el encabezado y en los archivos lib y funcionó.

+3

Bien, acepta su publicación entonces. Hay un buen tipo. – Goz

0

Ese encabezado fue precisely engañado en agosto de 2009 SDK, aunque eso no debería sorprender ya que las versiones antiguas de DX ya estaban two years obsoletas, lo que permite una sola biblioteca para todo.

Por cierto, las personas pueden estar interesadas en comprobar this post para obtener una versión más actualizada.

+0

¿Puede agregar algunos detalles que ayudarán aunque el enlace esté desactivado? ¡Gracias! –

+1

¿Estás hablando de los primeros dos enlaces (cuyo único propósito es "ser referencias") o el último? En este caso (dejando de lado no veo msdn bajando) parece más un "[incidental] (http://meta.superuser.com/questions/12118/what-is-sufficient-context-for-an- incidental-additional-info-link) "información que nada. – mirh

+0

Si crees que es una pregunta de superusuario, creo que puedes marcar la pregunta. Si esto no fue una respuesta, sino un comentario, puede agregarlo como tal. ¡Gracias por su respuesta! –

Cuestiones relacionadas