• Sábado 20 de Abril de 2024, 09:01

Autor Tema:  Problemas con ejecutable en Visual C++  (Leído 1944 veces)

PFCErika

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Problemas con ejecutable en Visual C++
« en: Miércoles 22 de Septiembre de 2010, 16:53 »
0
Hola,

Antes de nada, disculparme por reabrir un tema que he visto aparecer (y dar por resuelto) en este foro, pero en mi caso, tras seguir los pasos indicados, continúa el problema.

Estoy creando un programa con Microsoft Visual C++ 6.0 Professional Edition, y me gustaría que el ejecutable pudiera abrirse en cualquier otro ordenador que no fuera el mío, donde tengo instalado el Visual.

a) Si ejecuto la versión Debug, el .exe se genera en la carpeta que he especificado, pero no puedo llevármelo a ningún otro PC porque me da error de MFC24D.dll . Cuando cargo esta librería y la siguiente que me pide (msvcrtd.dll) aparece el error de que no existe ordinal 4993 en la primera librería.. y no consigo llegar a ninguna parte por este camino.

b) Si ejecuto la versión Release, para no confundir el .exe con el de la versión Debug, he especificado en  "Project Settings" una ubicación y nombre diferente, pero no se genera.Ejecuto el programa y se me abre la aplicación, pero cuando voy a buscar el .exe no lo encuentro donde debería estar.

En todos los hilos anteriores parece resolverse el problema ejecutando la versión Release, pero debo estar haciendo algo mal porque como os comento, sigo sin poder ver mi programa en un PC distinto al que lleva instalado el Visual C++

¿Se os ocurre en qué puedo estar metiendo la pata?
Muchas gracias!
Érika

rfog

  • Miembro MUY activo
  • ***
  • Mensajes: 166
    • Ver Perfil
Re: Problemas con ejecutable en Visual C++
« Respuesta #1 en: Sábado 25 de Septiembre de 2010, 13:29 »
0
Si no hubieras tocado nada de la configuración, tendrías dos carpetas, una llamada Debug y otra Release, con el ejecutable de cada versión. Ahora que has tocado eso cualquiera sabe dónde la has liado.

Por otro lado, no puedes distribuir un ejecutable en modo Debug, ni las DLL asociadas a ello, no de forma legal.

El problema que te da de ordinales faltantes se debe a que estás mezclando versiones de DLLs. Espero que las que has ido colocando en el ordenador de destino las metieras en la misma carpeta que el programa, porque si lo has hecho en C:WindowsSystem32,  Windows se habrá "adueñado" de ellas y las habrá colocado en la caché SxS, con lo que ahora tendrás un sistema inestable y que cuando algún programa use esa versión de DLL de MFC, fallará, sea el programa que sea (no solo los tuyos)...
Microsoft Visual C++ MVP - Mi blog sobre programación: http://geeks.ms/blogs/rfog

barriosdf

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Quitar / Vaciar
« Respuesta #2 en: Lunes 25 de Octubre de 2010, 00:39 »
0
Hola ...!!! Pongo los codigos como yo puse en mi trabajo .... aguardo sua respuesta gracias...barriosdf@hotmail.com

Al seleccionar un Procesador y un sistema operativo devera aparecer en el TEXT una leyenda con "UD. Tiene un procesador pentium con el sistema operativo windows 98" Por ejemplo:
El botón cmdnuevo devera vaciar el TEXT y quitar la seleccion de las OPTIÓN ( No se podra cambiar la selección entre los OPTIÓN) El BOTÓN de cmdcerrar finalizara la ejecución del formulario.


Private Sub cmdnuevo_Click()
Opt486.Enabled = True
optpentium.Enabled = True
optpentiumpro.Enabled = True
End Sub

Private Sub Opt486_Click()
Text1.Text = "ud. tiene un procesador 486"
Opt486.Enabled = True
optpentium.Enabled = False
optpentiumpro.Enabled = False
End Sub

Private Sub optpentium_Click()
Text1.Text = "ud. tene un procesador pentium"
Opt486.Enabled = False
optpentium.Enabled = True
optpentiumpro.Enabled = False
End Sub

Private Sub optpentiumpro_Click()
Text1.Text = "ud. tiene un procesador pentium pro"
Opt486.Enabled = False
optpentium.Enabled = False
optpentiumpro.Enabled = True
End Sub

Private Sub optwindows95_Click()
Text1.Text = "ud. tiene un sistema operativo windows 95"
End Sub

Private Sub optwindows98_Click()
Text1.Text = "ud.tiene un sistema operativa windows 98"
End Sub

Private Sub optwindowsme_Click()
Text1.Text = "ud. tiene un sistema operativo windows me"
End Sub

Private Sub optwindowsnt_Click()
Text1.Text = "ud. tiene un sistema operativo windows nt"
End Sub