Autor
|
Tema: TUTORIAL PROGRAMACION BAT (Leído 396,509 veces)
|
dani_travieso
Desconectado
Mensajes: 18
|
hola
Tengo un problemita seguro para usetd sera una casilla, es que no se programar en bat.
Bueno este es mi problemita, como puedo crear un bat que me ahorre el tiempo en darle doble click a esto archivos y de pase ejecute el archivo winvnc.exe:
archivo 1 : install.bat archivo 2 : install_silent.bat archivo 3 : winvnc.exe
Solo quiero dar doble click al bat creado por usted y listo que solo aparezca el la opcion de configuracion del programa ejecutado `por el bat
|
|
|
|
|
En línea
|
|
|
|
davidpg
Desconectado
Mensajes: 1
|
Hola a todos, soy nuevo en esto de la programación y me gustaria saber si es posible crear un bat que me permita enviar un mail automatico a una direccion concreta y despues ejecutar el cierre de sistema. Segun lo que vengo leyendo en los distintos foros, este incluido, mi programa es como sigue: echo off :EnviaMens start.exe /w mailto:?to=" davidpg@telepolis.com"&subject="Cierre de Sistema" -h :CierraApl&Sis RUNDLL32.EXE SHELL32.DLL,SHExitWindowsEx 6 Haber si alguien me puede ayudar xfavor, lo necesito. Muchas gracias.
|
|
|
|
|
En línea
|
|
|
|
jorges
Desconectado
Mensajes: 2
|
Bueno de nuevo por aqui con un problema :
Porque la siguiente sentencia es valida en win98 y en Xp me da error ? CD C:\DOCUME~1\J\ESCRIT~1\C
IF NOT EXIST 1 RENAME A 1.TXT GOTO FIN IF NOT EXIST 2 RENAME A 2.TXT GOTO FIN IF NOT EXIST 3 RENAME A 3.TXT GOTO FIN
:FIN
En Win98 instruccion correcta en Xp "La sintaxis del comando no es correcta"
Gracias
|
|
|
|
|
En línea
|
|
|
|
soplo
Ex-Staff
Desconectado
Mensajes: 3.597
Debian rool'z
|
Hola CD C:\DOCUME~1\J\ESCRIT~1\C Esa trayectoria no es correcta a menos que tengas en el escritorio una carpeta llamada C IF NOT EXIST 1 RENAME A 1.TXT GOTO FIN Eso no es correcto. Exist devuelve true si existe un fichero y false si no existe. Lo correcto sería IF NOT EXIST MIARCHIVO.TXT ... La orden IF NOT EXIST 1 RENAME A 1.TXT GOTO FIN está mal IF NOT EXIST 1 (si no existe el archivo '1') RENAME A 1.TXT (renombra el archivo A como 1.txt) Supongo que note refieres al 1 anterior, porque no es lo mismo 1 que 1.txt. Por último la orden exist no admite dos órdenes si se cumple la condición. Tu has puesto IF NOT EXIST 1 condición1 condición2 lo correcto sería IF NOT EXIST 1 GOTO NOEXISTE1 GOTO CONTINUAR :NOEXISTE1 RENAME A 1.TXT :CONTINUAR
|
|
|
|
|
En línea
|
Callar es asentir ¡No te dejes llevar!
|
|
|
pulposo
Desconectado
Mensajes: 3
|
yo de programacion bastante mal, pero ahora me ha cogido por aprender, y que mejor que en bat.
El caso es que me gustario hacer un registro con el.bat, pero cogiendo el directorio donde se ha instalado el programa, diria que un %1 o una cosa asi.
Si hago En el.bat
"Directorio instalacion"="%1">>pep.reg No me sirve de nada
Creo que tengo de hacer variables y ni pum, y lo ideal seria sin ayuda del usuario,es decir automatizado.
Gracias.
|
|
|
|
|
En línea
|
|
|
|
|
|
soft
Desconectado
Mensajes: 297
Nadie nace sabiendo
|
una pregunta con un bat se puede crear un keylogger???
|
|
|
|
|
En línea
|
No puedes ver lo que no Existe
|
|
|
soplo
Ex-Staff
Desconectado
Mensajes: 3.597
Debian rool'z
|
No, pero se puede ejecutar un keylogger de forma silenciosa.
Un saludo
|
|
|
|
|
En línea
|
Callar es asentir ¡No te dejes llevar!
|
|
|
Listen to the dark
Desconectado
Mensajes: 17
Cada sombra de ti es un escondite para mi.Leviatan
|
me encanto el tuto de este post,yo ando aprendiendo este ""lenguaje"" y no ando nada mal.... pero me surgen grandes problemas a la ora de poner en practica estos "programillas" o codigos por lotes,en las distintas versiones de windows....
para empezar si yo qiero qe un batch rule al inicio de windows tengo varias opciones: -insertar el codigo en el registro -insertar el codigo en >> c:\autoexec.bat -o mover el bat a la carpeta inicio
como ven no ando perdido.... o si???? el caso es que ninguna de las tres formas soy capaz de llevarlas ala practica....jejeje.
-mi primer problema es que no se generar un archivo de registro a traves de un bat que rule con windows...
-el segundo problema es que en winxp el autoexec.bat queda desabilitado del inicio de windows,es decir no se ejecuta con windows.....
-mi tercer y mas preocupante problema es que el siguiente codigo no rula:
----------------------------------- @echo off c: cd\ echo codigo>> c:\prueba.bat move c:\prueba.bat c:\"Documents and Settings"\"All Users"\"Menú Inicio"\"Programas"\"Inicio"\prueba.bat exit -----------------------------------
como ven es bien simple,y lo que intento es mover el archivo creado por el mismo bat al inicio..pero no lo mueve,no se porque.luego haciendo pruebas adverti qe si ponia esto:
----------------------------------- @echo off c: cd\ echo codigo>> c:\prueba.bat move c:\prueba.bat c:\"Documents and Settings"\"All Users"\Prueba.bat exit ------------------------------------
este si funcionaba....!!!! por que???? es decir,con el codigo batch no era capaz de "traspasar" la carpeta "MENU INICIO"... lo probe de mil maneras,con comillas,sin comillas,con mayusculas,sin ellas,con asteriscos,una combinacion tras otra sin resultados.......
estaria muy agradecido si me pudieran ayudar.....gracias por vuestro tiempo....
|
|
|
|
|
En línea
|
|
|
|
Listen to the dark
Desconectado
Mensajes: 17
Cada sombra de ti es un escondite para mi.Leviatan
|
Alguien sabria como hacerlo???
|
|
|
|
|
En línea
|
|
|
|
|
|
gattoloco
Desconectado
Mensajes: 5
|
Hola, Espero no molestar a nadie con mi inquietud... jejeje
Bueno, deseo eliminar un directorio con un bat.... facil ...creo
mas o menos así:
if exist (CARPETA) RMDIR (carpeta)
Pero como dicen NO RULA ¨PARA NADA¨
Espero que alguno me pueda ayudar.
PROMETEO
|
|
|
|
|
En línea
|
|
|
|
wilrey
Desconectado
Mensajes: 1
|
Hola a todos, por favor alguien que me colabore..... estoy empezando a programar en bat y necesito crear bat que me genere un log y backup cada vez que inserto un valor en una aplicacion tipo nomina.
Espero me puedan ayudar
Gracias
|
|
|
|
« Última modificación: 5 Abril 2005, 05:14 por Morris »
|
En línea
|
|
|
|
Natanael
Desconectado
Mensajes: 13
Nadie esta a salvo de la locura.
|
@echo off cls set %1 set dia=00 set mes=00 set año=00 if %OS% == Windows_NT goto winnt goto win9x :winnt date /t > date.txt goto dia :win9x date <intro.txt |find "actual" >date.txt goto dia :dia find " 01/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=01 find " 02/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=02 find " 03/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=03 find " 04/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=04 find " 05/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=05 find " 06/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=06 find " 07/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=07 find " 08/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=08 find " 09/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=09 find " 10/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=10 find " 11/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=11 find " 12/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=12 find " 13/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=13 find " 14/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=14 find " 15/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=15 find " 16/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=16 find " 17/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=17 find " 18/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=18 find " 19/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=19 find " 20/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=20 find " 21/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=21 find " 22/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=22 find " 23/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=23 find " 24/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=24 find " 25/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=25 find " 26/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=26 find " 27/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=27 find " 28/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=28 find " 29/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=29 find " 30/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=30 find " 31/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=31 :mes find "/01/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=01 find "/02/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=02 find "/03/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=03 find "/04/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=04 find "/05/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=05 find "/06/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=06 find "/07/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=07 find "/08/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=08 find "/09/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=09 find "/10/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=10 find "/11/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=11 find "/12/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=12 :año find "2004" <date.txt if errorlevel 0 if not errorlevel 1 set año=04 find "2005" <date.txt if errorlevel 0 if not errorlevel 1 set año=05 find "2006" <date.txt if errorlevel 0 if not errorlevel 1 set año=06 :carpeta cls md %1%dia%-%mes%-%año% :end En Win98 no me funciono, pero... @echo off cls set %1 set dia=00 set mes=00 set año=00 :win9x ECHO.|date|FIND "actual" >date.txt goto dia :dia find " 01/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=01 find " 02/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=02 find " 03/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=03 find " 04/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=04 find " 05/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=05 find " 06/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=06 find " 07/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=07 find " 08/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=08 find " 09/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=09 find " 10/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=10 find " 11/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=11 find " 12/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=12 find " 13/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=13 find " 14/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=14 find " 15/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=15 find " 16/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=16 find " 17/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=17 find " 18/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=18 find " 19/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=19 find " 20/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=20 find " 21/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=21 find " 22/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=22 find " 23/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=23 find " 24/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=24 find " 25/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=25 find " 26/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=26 find " 27/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=27 find " 28/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=28 find " 29/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=29 find " 30/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=30 find " 31/" <date.txt if errorlevel 0 if not errorlevel 1 set dia=31 :mes find "/01/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=01 find "/02/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=02 find "/03/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=03 find "/04/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=04 find "/05/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=05 find "/06/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=06 find "/07/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=07 find "/08/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=08 find "/09/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=09 find "/10/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=10 find "/11/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=11 find "/12/" <date.txt if errorlevel 0 if not errorlevel 1 set mes=12 :año find "2004" <date.txt if errorlevel 0 if not errorlevel 1 set año=04 find "2005" <date.txt if errorlevel 0 if not errorlevel 1 set año=05 find "2006" <date.txt if errorlevel 0 if not errorlevel 1 set año=06 :carpeta cls md %1%dia%-%mes%-%año% :end si me funciona... Bueno... Quisiera saber como cambiar colores en bat lo vi 1 ves en un bat trial q me habia bajado pero lo perdi (al bat) ChauxX
|
|
|
|
|
En línea
|
Salu-DOS 
|
|
|
acrego
Desconectado
Mensajes: 2
|
Buenas a todos, tengo un pequeño problema, tengo un bat y lo que quiero que me haga es que me copie un fichero en otro equipo. Le tengo un: if not exist datos.txt copy datos.txt yo lo que consegui es que si no existe la primera vez me lo copie un sola vez, y quisiera que lo repitiera hasta que lo copie, que si hace falta lo repita 20 veces. un saludo a todos. 
|
|
|
|
|
En línea
|
|
|
|
|
| Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Tutorial: Programación ODBC
Programación General
|
ø:|The_hacker|:ø
|
0
|
442
|
23 Febrero 2005, 09:37
por ø:|The_hacker|:ø
|
|
|
Tutorial: Programación PIC
Electrónica
|
Fabios Arts
|
2
|
6,010
|
4 Diciembre 2005, 22:23
por Fabios Arts
|
|
|
Tutorial programación BAT
Scripting
|
soplo
|
4
|
1,425
|
22 Julio 2006, 23:38
por sirdarckcat
|
|
|
Video Tutorial Programacion C++
« 1 2 3 4 5 »
Programación C/C++
|
Chuxxx
|
60
|
41,527
|
7 Febrero 2012, 15:26
por MauroMasciar
|
|
|
Tutorial de programación con Qt4 - 1º,2º y 3º entrega
Programación C/C++
|
paju1986
|
1
|
1,812
|
25 Diciembre 2010, 21:52
por Littlehorse
|
|