El Mon, 15 Feb 2010 16:13:20 -0500
Manuel Alejandro Cerón Estrada <ceron...@gmail.com> dijo:

> Hola.

Hola todos.

> 
> El día 15 de febrero de 2010 15:53, Dr. Bobus <drbo...@gulic.org> escribió:
> > Hola todos:
> >
> > No se si es muy correcto enviar este mensaje a esta lista, pero quería 
> > saber si puede alguien ayudarme.
> >
> > Un amigo me ha pedido un pequeño script para transformar unos ficheros 
> > antiguos dbf a algo que pueda usar (csv).
> >
> > El script lo he hecho usando el paquete dbf de Ethan Furman (ver 0.84.18) 
> > [1]. Abro los ficheros, realizo las transformaciones que me pidió y lo 
> > grabo en csv.
> >
> > El asunto funciona tan ricamente, pero mi amigo usa windows y no tiene 
> > python instalado. La cosa es que le "compilé" el script con py2exe.
> >
> > Tras "compilarlo" lo he probado en varias instalaciones windows que tengo a 
> > mano (Windows 2000, windows XP y Windows 7) y funciona perfecto. Sin 
> > embargo, a él no le funciona (usa windows XP último service Pack). Me 
> > comenta que al ejecutarlo le dice:
> >
> > "no se pudo iniciar la aplicacion porque su configuracion es incorrecta. 
> > Reinstalar aplicacion puede solucionar el problema."
> >
> > La verdad es que el programa no necesita ninguna instalación ni 
> > configuración, copiarlo en una carpeta, poner en ella los ficheros a 
> > transformar y darle doble clic. Así funciona en todas las pruebas que he 
> > hecho. No se precisan permisos de administrador ni nada por el estilo. El 
> > programa no hace nada más que abrir y cerrar ficheros. Donde lo he probado 
> > lo he ejecutado como usuario normal.
> >
> > He estado mirando en Google y sólo he encontrado una entrada que no me 
> > resuelve nada. No tengo ni idea de lo que esta diciendo Windows.
> >
> > Las opciones para la generación en py2exe fueron:
> > "py2exe":{
> >    "unbuffered": True,
> >    "optimize": 2,
> >    "excludes": ["pywin", "pywin.debugger", "pywin.debugger.dbgcon",
> >                 "pywin.dialogs", "pywin.dialogs.list",
> >                 "Tkconstants","Tkinter","tcl"
> >                 ]
> >     }
> >
> > Esto lo hice en una instalación de Python 2.6.4 usando las librerias 
> > estandar salvo la comentada para manejar ficheros dbf.
> >
> >
> > Alguna ayuda?
> 
> Tu problema ocurre porque los binarios oficiales de Python 2.6 para
> Windows son compilados con MS Visual C++ 9 y por lo tanto dependen de
> una biblioteca llamada 'msvcr90.dll'. En tus instalaciones de Windows
> el programa funciona bien porque probablemente ya tengas una
> aplicación que use esta biblioteca y la haya instalado en tu sistema.
> El mismo Python 2.6 instala esta biblioteca.
> 
> Ahora la solución es sencilla: tienes que distribuir tu programa junto
> con la librería 'msvcr90.dll' y el archivo manifiesto
> 'Microsoft.VC90.CRT.manifest'. Estos archivos deben estar en algún
> lugar de tu disco duro, pero si quieres conseguirlos fácilmente,
> instala Python 2.6 en modo "Sólo para este usuario" y te aparecerán en
> la carpeta C:\Python26 o dónde lo hayas instalado.


Muchas gracias con retraso, hice como se comenta en esta receta y efectivamente 
funciona. Ese era el problema.
Realicé una instalación de windows "fresca" en Virtual Box y efectivamente el 
programa no funcionaba y pude reproducir el error. Al instalar el MS Visual C++ 
9  que instala la librería que tu comentas el programa ya funcionaba.

No he contestado antes a la lista pues mi amigo tardo "un poco" en probar la 
solución. Instaló la librería y el script ya le funciona.

Saludos y gracias.

Dr. Bobus

-- 
"...[Linux's] capacity to talk via any medium except smoke signals."
(By Dr. Greg Wettstein, Roger Maris Cancer Center)

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a