Pregunta

He escrito un juego que usa GLUT, OpenGL y FMOD. El problema es que el binario no se ejecutará, a menos que Visual Studio 2008 esté instalado en la computadora.

¿Por qué es esto?

¿Fue útil?

Solución

Lo más probable es que se vincule con versiones DLL del tiempo de ejecución C / C ++. Ir a las propiedades del proyecto - > C ++ - > Generación de código y establezca la Biblioteca de tiempo de ejecución en no para ser uno de " DLL " tipos.

Alternativamente, puede vincular a tiempos de ejecución de DLL, pero luego debe redistribuir el tiempo de ejecución con su aplicación.

MSDN tiene más información sobre varios aspectos de la implementación de aplicaciones C ++: http: // msdn.microsoft.com/en-us/library/zebw5zk9.aspx

Además, Dependency Walker (depende.exe) mostrará de qué bibliotecas depende su ejecutable. También se entrega con algunas versiones de Visual Studio.

Otros consejos

¿Quieres decir por qué es Microsoft Visual C ++ 2008 Redistributable Package (x86) ¿necesario?

  

Este paquete instala el tiempo de ejecución   componentes de C Runtime (CRT),   Estándar C ++, ATL, MFC, OpenMP y   Bibliotecas MSDIA. Para bibliotecas que   admite el modelo de despliegue en paralelo   (CRT, SCL, ATL, MFC, OpenMP) son   instalado en el ensamblaje nativo   caché, también llamada carpeta WinSxS, en   versiones del sistema operativo Windows   que admiten conjuntos uno al lado del otro.

Debido a que no están instalados en todas las ventanas de forma predeterminada, especialmente las que se enviaron antes de VS 2008.

Incluso para

cout << "Hello, World" << endl;

Necesita una biblioteca, que en este caso es la biblioteca estándar de C ++.

Bienvenido al maravilloso mundo de la implementación de aplicaciones.

Ejecute la herramienta depende de su ejecutable y le dirá qué archivos DLL debe copiar junto con su EXE.

Este programa puede ayudarlo a encontrar qué dlls (si alguno) faltan en la computadora que no se ejecutará

Solo las versiones de lanzamiento del tiempo de ejecución de C y los dlls de la biblioteca estándar de C ++ se instalan con Windows de forma predeterminada. La instalación de Visual Studio instalará adicionalmente las versiones de depuración.

Asegúrese de que la versión que está implementando esté construida completamente en modo de lanzamiento.

Intente compilar en modo de lanzamiento y asegúrese de que todas las DLL necesarias estén instaladas en la máquina de destino. Funciona para mí.

¿Tiene dependencias en las bibliotecas de depuración?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top