Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/08/2012, 06:40
charliedj7
 
Fecha de Ingreso: mayo-2012
Ubicación: Madrid
Mensajes: 20
Antigüedad: 12 años, 5 meses
Puntos: 1
Exclamación Problema con .Bat en XP

Hola a todos, realice con la ayuda de un compañero del foro un programita en .bat para automatizar unas impresiones.
Todo funciona correctamente, pero lo e migrado a un sistema con windows XP y el programa no se ejecuta correctamente.
Se habre y despues se cierra.

He buscado por la web, y e podido leer algo de que no se programa igual para XP que para 7 pero no consigo encontrar el fallo.

Os dejo el codigo:
Código:
:INICIO
SET carpetatrabajos="C:\Users\workstation\Desktop\TrabajosServiDr\Trabajos"
echo off
cls
COLOR 70
cd /d %carpetatrabajos%
SET /A numerodecarpeta=1
:DETECTARTRABAJOSARCHIVADOS
dir %numerodecarpeta%[Archivado]
if %ERRORLEVEL%==1 GOTO FINDETECCIONDETRABAJOSARCHIVADOS
SET /A numerodecarpeta=%numerodecarpeta%+1
GOTO DETECTARTRABAJOSARCHIVADOS
:FINDETECCIONDETRABAJOSARCHIVADOS
SET /A ultimotrabajoarchivado=%numerodecarpeta%-1
SET /A ultimotrabajo=%numerodecarpeta%
dir 1
if %ERRORLEVEL%==1 if %ultimotrabajoarchivado%==0 GOTO PREGUNTARNUMERODETRABAJOACTUAL
if %ultimotrabajoarchivado%==0 GOTO PREGUNTARACCION
cls
echo .............................................................
echo ..              PROGRAMA DE GESTION DE TRABAJOS 
echo ............................................................. 
echo Directorio de trabajo: 
echo %cd%
echo.
echo El £ltimo trabajo archivado es el Nø %ultimotrabajoarchivado%
echo.
echo Presione cualquier tecla para comenzar con el trabajo Nø %ultimotrabajo%
PAUSE>nul
GOTO COMENZAR
:PREGUNTARACCION
cls
echo Parece ser que es la primera vez que se ejecuta este programa;
echo no se ha detectado ningun trabajo archivado.
echo.
SET /P pregunta=¨Desea Empezar con el trabajo Nø 1 (E) o desea Introducir el n£mero del £ltimo trabajo pendiente (I)?
IF %pregunta%==E SET ultimotrabajo=1&& GOTO COMENZAR
IF %pregunta%==e SET ultimotrabajo=1&& GOTO COMENZAR
IF %pregunta%==I cls && GOTO PREGUNTATRABAJO
IF %pregunta%==i cls && GOTO PREGUNTATRABAJO
GOTO PREGUNTARACCION
:PREGUNTARNUMERODETRABAJOACTUAL
cls
echo El programa no ha detectado ning£n trabajo.
:PREGUNTATRABAJO
SET /P ultimotrabajo=Por favor, introduzca el n£mero del £ltimo trabajo y presione Enter, se archivar*n todos los trabajos anteriores: 
SET /A renombrar=1
if exist %ultimotrabajo% GOTO RENOMBRAR
echo.
echo Error: No se ha detectado el trabajo Nø %ultimotrabajo%, puede que no exista.
echo.
PAUSE
GOTO INICIO
:RENOMBRAR
ren %renombrar% %renombrar%[Archivado]
SET /A renombrar=%renombrar%+1
if %renombrar%==%ultimotrabajo% GOTO CONTINUAR
GOTO RENOMBRAR
:CONTINUAR
dir %ultimotrabajo%
IF %ERRORLEVEL%==1 echo Error: El programa no detectó el numero del trabajo introducido. && echo. && PAUSE && GOTO INICIO
cls
echo Presione cualquier tecla para comenzar con el trabajo Nø %ultimotrabajo%
PAUSE>nul
GOTO COMENZAR
:COMENZAR
cls
SET /A trabajofichero=%ultimotrabajo%+1
cd %ultimotrabajo%
echo Directorio de trabajo:
cd
echo.
setlocal enabledelayedexpansion
rem echo.>Ficheros_juntos.txt
rem echo.>>Ficheros_juntos.txt
rem echo.>>Ficheros_juntos.txt
rem echo Nø de trabajo: %ultimotrabajo% >>Ficheros_juntos.txt

echo .>Ficheros_juntos.txt
echo Nº DE TRABAJO  : %ultimotrabajo% >>Ficheros_juntos.txt
echo .>>Ficheros_juntos.txt
echo .>>Ficheros_juntos.txt
echo .>>Ficheros_juntos.txt
echo .>>Ficheros_juntos.txt
echo .>>Ficheros_juntos.txt
echo -----------LABORATORIOS UNICOLOR S.L-------------->>Ficheros_juntos.txt
echo ________________________________________>>Ficheros_juntos.txt
echo Nº DE TRABAJO  : %ultimotrabajo% >>Ficheros_juntos.txt
for /f "delims=" %%a in (_detalles.txt) do (
echo %%a >> Ficheros_juntos.txt)
echo Instrucciones del cliente:>>Ficheros_juntos.txt
for /f "delims=" %%a in (_instrucciones.txt) do (
echo %%a >> Ficheros_juntos.txt)
echo ----------------------------------------------------------------->>Ficheros_juntos.txt
type Ficheros_juntos.txt|CLIP
echo Informacion copiada al portapapeles.
rem start notepad.exe Ficheros_juntos.txt
echo.
echo Imprimiendo el trabajo...
notepad /P "Ficheros_juntos.txt"
echo.
echo Presione cualquier tecla para archivar el trabajo Nø %ultimotrabajo%
PAUSE>nul
cd ..
ren %ultimotrabajo% "%ultimotrabajo%[Archivado]"
GOTO INICIO
Un saludo y Buen verano