|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - emilianoo
Páginas: [1]
1
« en: Martes 2 de Octubre de 2007, 19:25 »
En fin, no era problema de librerías, el programa provocaba un desbordamiento de pila en una makina y en otra makina no, al recompilar se solucionó.. valla uno a saber porqué... pero era eso...
2
« en: Jueves 20 de Septiembre de 2007, 21:49 »
1- Versión distinta de codigo ---> falso, es exactamente la misma. 2- Versión distinta de compilador ---> falso, es exactamente el mismo. 3- Parámetros distintos de compilación ---> no lo se, pero supongo que son lo mismos ya que no toco nada de las opciones de compilacion, este programa compila con las opciones por defecto. - Veré si los makefiles generados son iguales. - Luego aré un checksum de ambos archivos.. para ver si el ejecutable es el mismo o no. - En caso de que sean ambos ejecutables iguales comprobaré las dependencias con Dependency Walker y veré que no falte nada. - Y luego les cuento. El error, lo más probable, es que sea una falla tuya, y el programa funciona mientras no se ejecuten ciertas sentencias...
La entrada de datos es tambien la misma, así que el código que se ejecuta debería ser el mismo en ambos casos, o sea, el programa tomaría las misma deciciones y ejecutaría las mismas sentencias..
3
« en: Jueves 20 de Septiembre de 2007, 09:17 »
Pista.. Busca por inpout32.dll allí hay un par de funcioncitas que te pueden ayudar..
mm.. y creo que con CreateFile tambien es posible acceder a los puertos paralelos...
A googlear..
4
« en: Jueves 20 de Septiembre de 2007, 09:09 »
El problema es el ejecutable, eso es claro. Da el error en la llamada a la librería, pero al recompilar y generar un nuevo ejecutable en este S.O. ya el error no se produce.. es claro que el executable creado nuevamente en el PC, no es exactamente el mismo que el que yo compilé en mi PC, aunque usando exactamente el mismo source (SI, segurísimo).. ya que el nuevo ejecutable funciona bien, y el anterior NO, o sea.. la duda que me surge es ¿Por qué Dev-C++ crea un ejecutable diferente en mi pc que en la de mi amigo con exactamente el mismo codigo? (o sea, está creando dos ejecutables diferentes, dependiendo de la PC donde me encuentre y esto es lo que quiero entender por qué!).. Cuando valla de mi amigo el viernes voy a depurar paso a paso el programa y ver exactamente donde se produce el error..
Otra cosa, utilizé librerias de sistema, solamente, de hecho el programa al recompilarlo en la maquina donde se ejecutará, luego funciona correctamente, así que no es que falte alguna librería o algo por el estilo..., lo único que se me ocurre aquí es que al instalar Dev-C++, éste instale alguna dll en el directorio del systema.. lo cual no lo habia pensado.. y esa libreria es utilizada por el programa.. con lo cual mi afirmacion anterior "utilizé librerias de sistema, solamente" es falsa.. pero solo si Dev-C++ instala alguna dll en el directorio del sistema.. ya veré el viernes.. ya que tampoco probé mi programa luego de haber instalado Dev-Cpp en la PC de mi amigo.. solo lo ejecute antes, dio error, recompilé, y andubo.. y no me detuve a ver porque me corria el tiempo... y también chekeare con el programa que me has pasada... gracias..
Saludos.
5
« en: Jueves 20 de Septiembre de 2007, 04:48 »
Hola, el tema es el siguiente.. hice un pequeño programa en C en mi PC con Dev-C++ bajo Windows XP, bueno, todo fue de 10, hasta que llevé ese mismo programa a una PC de un amigo, también con Windows XP y hasta el mismo microprocesador y todo, y comenzó el problema, el programa crashea con el clasico "el programa ha efectuado una operacion incorrecta y debe cerrarse, blablabla"... el error lo dio una librería del sistema, no recuerdo el nombre, pero lo dio una librería (dll) dentro de /windows/system32/, ahora bien, instalé Dev-C++ en la maquina de mi amigo, volvi a compilar el programa sin tocar absolutamente nada, y el programa funcionó correctamente... bien, mi pregunta es entonces: ¿En que cambió mi ejecutable al recompilarlo en la PC de mi amigo?.. Es claro que el ejecutable ha cambiado, ya que uno da error y el otro no... la librería que daba error no la he tocado, simplemente he recompilado el programa, sin modificar absolutamente nada, y con exactamente la misma versión del compilador con el que compile en mi pc.. ¿Que es lo que cambio en el ejecutable al recompilarlo en la casa mi amigo?.. Teniendo en cuenta que es exactamente el mismo compilador, las mismas librerias de importacion (ya que vienen con Dev-C++), el mismo sistema operativo, la misma arquitectura y exactamente la misma entrada de datos.. francamente no entiendo que puede estar pasando... lo quiero hacer portable y no puedo..
Supongamos por un momento que ésta DLL que generó el error no es la misma que en mi PC. o sea, que mi amigo tiene una versión diferente de la misma librería, en ese caso... ¿¿¿Como el compilador fue capaz de darse cuenta de ésto para crear el ejecutable correcto???
Saludos.
Páginas: [1]
|
|
|