El programa no puede iniciarse porque falta MSVCP120.dll en el equipo ....

Iniciado por WalterBlanco, 13 Octubre 2015, 16:00 PM

0 Miembros y 1 Visitante están viendo este tema.

WalterBlanco

Hola amigos:

Hice una aplicación sencilla en Visual Studio 2013 que utiliza bibliotecas de OpenCV 2.4.10. La programé para que para que corra localmente haciendo clik en un ícono del Desktop en Windows 8.1. Luego de compilar en modo RELEASE hice un instalador con InstallShield Limited Edition Project. Por supuesto, instalé la aplicación en mi máquina y funcionó de maravillas. Pero al intentar instalarlo en otro equipo me dio problemas. Primero me hizo descargar .NET Framework 4.5. Luego me mostró el siguiente mensaje:

"El programa no puede iniciarse porque falta MSVCP120.dll en el equipo. Intente reinstalar el programa para corregir este problema."

¿Por qué ocurre este problema? ¿Cómo lo puedo resolver?

Gracias por sus consejos.

Walter.

engel lex

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

x64core

Compilar el codigo estaticamente:

En Visual studio, ve a la propiedades del proyecto -> C/C++ -> Libreria RunTime -> Selecciona: Multi-threaded (/MT). Con esa opcion al compilar el codigo seria incrustado en tu ejecutable asi deja de depender de la DLL.

WalterBlanco

Hola amigos:

Actualicé los paquetes redistribuibles y configuré la opción del compilador "biblioteca en tiempo de ejecución" a "/MT", pero me da error porque mi aplicación es "clr" y es incompatible con "/MT".  También es incompatible con "/MTd" y con la opción "/MDd". En esta última opción me da error porque es incompatible con las bibliotecas de OpenCV para modo RELEASE que estoy utilizando en el programa y porque estas opciones se usan solamente en las compilaciones en modo DEBUG.

Con la única que compila bien es con la opción "/MD" (DLL multiproceso).

Voy a probar con actualiar las DLL en la máquina donde quiero que se instale la aplicación.

Gracias a ambos por su contribución.

Hasta luego.

WalterBlanco