• Publicidad

Mi programa Perl funciona en Windows XP pero no en Windows 7

¿Eres administrador de sistemas? Este foro es para todos aquellos temas relacionados con el uso de Perl para administración de sistemas.

Mi programa Perl funciona en Windows XP pero no en Windows 7

Notapor emir_perl » 2012-08-30 09:44 @447

Hola,

Quisiera que, por favor, me ayuden.

Tengo un programa Perl que se conecta a una base de datos y me baja información a un archivo Excel. Este me funciona perfectamente en Windows XP pero lo corro en cualquier equipo con Windows 7 y no funciona :cry: No sé si es por el Windows y/o procesos, Excel o configuración del sistema.

Básicamente en Windows 7 me deja ingresar el campo a consultar de la base de datos y cuando intenta bajar la información al Excel no pasa nada (la conexión de la Oracle está perfecta). El Excel no se cierra ni me advierte nada :(

El error que saca es: Died at programa.pl line 265, <stdin> line 1.

¡Gracias!
emir_perl
Perlero nuevo
Perlero nuevo
 
Mensajes: 5
Registrado: 2012-08-30 09:19 @429

Publicidad

Re: Mi programa Perl funciona en Windows XP pero no en Windo

Notapor explorer » 2012-08-30 10:16 @469

Bienvenido a los foros de Perl en Español, emir_perl.

¿Y qué es lo que hay en la línea 265 de programa.pl.

Es que, a ciegas, es difícil de acertar...
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Mi programa Perl funciona en Windows XP pero no en Windo

Notapor emir_perl » 2012-08-30 11:25 @518

¡¡¡Gracias!!!

En la línea está

$workbook -> SaveAs($DirAct."/documento.xls") or die $!;

Cabe aclarar que los sistemas en los que estoy probando son de Win32.
emir_perl
Perlero nuevo
Perlero nuevo
 
Mensajes: 5
Registrado: 2012-08-30 09:19 @429

Re: Mi programa Perl funciona en Windows XP pero no en Windo

Notapor hreyes » 2012-08-30 12:02 @543

Hola.

Pues dice que muera si no encuentra el directorio :S ¿Te aseguraste de que exista o que tenga la extensión correcta?
hreyes
Perlero nuevo
Perlero nuevo
 
Mensajes: 3
Registrado: 2010-04-27 15:52 @703

Re: Mi programa Perl funciona en Windows XP pero no en Windo

Notapor explorer » 2012-08-30 12:07 @547

Pues... poco se puede decir...

El error sale porque no ha podido realizar la operación de grabación del archivo documento.xls.

¿Qué módulo estás usando para crear el XLS?
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Mi programa Perl funciona en Windows XP pero no en Windo

Notapor emir_perl » 2012-08-30 15:19 @680

Son estos los que uso:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. use OLE;
  2. use DBI;
  3. use Cwd;
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


En realidad, haciendo un debug del programa, veo que realiza el proceso y no se está guardando por algún motivo en Windows 7, o será Excel.
emir_perl
Perlero nuevo
Perlero nuevo
 
Mensajes: 5
Registrado: 2012-08-30 09:19 @429

Re: Mi programa Perl funciona en Windows XP pero no en Windo

Notapor explorer » 2012-08-30 17:40 @777

Como dice hreyes, ¿has comprobado que $DirAct contiene un valor correcto?

Con solo una línea, no veo nada raro. Lo extraño es que no dé más información. ¿No se puede activar el debug con el OLE?

¿Y mirando en los registros de actividad de Windows? Es más: ¿Windows 7 tiene registros de actividad?
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Mi programa Perl funciona en Windows XP pero no en Windo

Notapor emir_perl » 2012-09-03 09:39 @444

¡Gracias!

Bueno, creo que ya identifiqué el problema, y es la forma de identificar la ubicación del archivo, en el programa lo tenía de la siguiente forma:

$file= $DirAct."\Archivo_$fecha{$br}.xls";

donde $DirAct es la forma de obtener la dirección (getcwd).

El problema es que esa dirección me trae algo así: C:/New folder/carpeta.\archivo_$fecha{$br}.xls y por esos '/' no me dejan guardar los archivos, pero si llamo la dirección completa C:\\New folder\\carpeta\\Archivo_$fecha{$br}.xls sí lo guarda, perfectamente.

Pero la idea no es dejar que se ejecute ese programa solamente en C: sino en cualquier dirección, por ello el $DirAct, entonces estoy tratando de conseguir una forma de que esa dirección me permita guardar....
emir_perl
Perlero nuevo
Perlero nuevo
 
Mensajes: 5
Registrado: 2012-08-30 09:19 @429

Re: Mi programa Perl funciona en Windows XP pero no en Windo

Notapor explorer » 2012-09-03 09:57 @456

En los Windows modernos (desde hace ya bastantes años), se puede usar el delimitador '/' en las rutas de los directorios, para que sean iguales que en UNIX. En el entorno MSDOS y Windows seguirás viendo en pantalla los '\', pero a nivel de Perl puedes usar '/', así que la línea anterior la puedes escribir como

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
$file= $DirAct."\\Archivo_$fecha{$br}.xls";
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4

o mejor
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
$file = $DirAct."/Archivo_$fecha{$br}.xls";
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4

o incluso
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
$file = "$DirAct/Archivo_$fecha{$br}.xls";
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Mi programa Perl funciona en Windows XP pero no en Windo

Notapor emir_perl » 2012-09-04 12:01 @542

Gracias.

Ese es el problema: que con ninguno de esos funciona, a menos que yo quite el $DirAct y ponga la ruta completa c:\\carpeta\\carpeta\\archivo.xls, pero, evidentemente de esa manera no es una solución debido a que no siempre va a ser C:.
emir_perl
Perlero nuevo
Perlero nuevo
 
Mensajes: 5
Registrado: 2012-08-30 09:19 @429

Siguiente

Volver a Administración

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado