ENTRAR EN EL FOROHACK ANTIGUO (Muchos temas viejos y de menor nivel)
09:45:49 04/12/2020
¿No estas registrado?
Login: Clave:
5 Usuarios en línea: 0 registrados, 5 invitados.
Conéctate y verás los usuarios en línea
Tema: Un par de preguntas sobre batch
    Responder
Todos Los Foros -> Batch -> Un par de preguntas sobre batch
Autor Mensaje (Ver Versión para Imprimir)
mahamoti
Aprendiz nivel 3
Arreglando las imágenes

Mensajes: 87
Registrad@:
25/06/2008
Estado: Desconectad@
Ver último Post
Un par de preguntas sobre batch

a ver. lo primero, agradeceros a jhavy y a kili4n vuestras aportaciones en batch. me han servido para entender dos partes de batch que necesitaba usar y que no conseguia aprender como COÑO HACERLAS FUNCIONAR. pero gracias a vuestros dos códigos, ya lo tengo dominado.

y ahora, dos dudas que me surgen:
- se puede preparar un .bat para que se ejecute a pantalla completa? He visto en portalhacker y en otros foros que existe una herramienta externa a la consola de comandos que lo permite. he visto que se puede añadir al .bat un código para que edite el registro y entonces ejecute la shell en pantalla completa siempre (pero no funcionaria la primera vez que ejecutes el .bat. y he visto que se puede llamar a otro .bat y que se ejecute en pantalla completa. pero, supongo que esto último también se podrá hacer en el propio .bat, me equivoco??
- cómo se establece un color distinto para una sección del .bat?? me explico. en mi .bat hay un menú principal, que va en un color. luego, lo que aparece a raíz de las opciones de ese menú, quiero que vaya en otro color. he probado todo lo que se me ha ocurrido con el comando "color XX", pero no he conseguido que funcione. y he buscado info, y tampoco he conseguido nada.

En fin, esas dos preguntillas.

Gracias

PD: kili4n, muy bueno tu protector. al principio, no me reconocía la contraseña, y me apagaba el PC XD pero luego ya ha funcionado bien. gracias por el aporte


http://usuarios.lycos.es/biaweb/
16/02/2010 21:02:33 
roller0
Maestro Nivel 4
Arreglando las imágenes

Mensajes: 733
Registrad@:
29/06/2007
Estado: Desconectad@
Ir Arriba
RE: Un par de preguntas sobre batch

para lo de los colores podria valer esto:
CÓDIGO
@echo off
:menu1
cls
color 1e
echo 1.- Ir a menu 2
echo 2.- salir
set /P var=
if %var%==1 goto menu2 else goto salir
if %var%==2 goto salir
:menu2
cls
color 3f
echo 1.- Ir a menu 1
echo 2.- Salir
set /P varg=
if %varg%==1 goto menu1 else goto salir
if %varg%==2 goto salir
:salir
exit


P.D.: Si alguien tiene idea sobre lo de la shell en pantalla completa, ke comparta la info ;)



Un gran paso para la comunidad......., un pekeño paso para el verdadero hacker.......... obtener una shell remota :D
16/02/2010 21:18:07 
kili4n
Maestro Nivel 2
Arreglando las imágenes

Mensajes: 459
Registrad@:
22/07/2008
Estado: Desconectad@
Ir Arriba
RE: Un par de preguntas sobre batch

Si, lo del color si esta bien y si puedes hacer color /? y te vienen los posibles colores que hay..y lo de la pantalla completa lo puedes hacer o pasando tu .bat a .exe y haciendo que se ejecute a pantalla completa o llamando o creando otro y llamarlo con el comando start.

PD: mira la ayuda de start para saber exactamente como hacerlo..ahora mismo no recuerdo el operador..




    >>> SpazeMonkys! <<
16/02/2010 22:14:50 
jhavy
Casi Maestro Nivel 3

Mensajes: 231
Registrad@:
23/07/2009
Estado: Desconectad@
Ir Arriba
RE: Un par de preguntas sobre batch

hola,
los colores son los sig.
CÓDIGO
0 = Negro          8 = Gris
1 = Azul            9 = Azul claro
2 = Verde          A = Verde claro
3 = Aguamarina   B = Aguamarina claro
4 = Rojo            C = Rojo claro
5 = Púrpura       D = Púrpura claro
6 = Amarillo      E = Amarillo claro
7 = Blanco         F = Blanco brillante


pero El comando COLOR configura ERRORLEVEL a 1 si se realiza un intento de ejecutar
el comando COLOR con el mismo color de primer y segundo plano.

iii como dice kili4n
CITA

la pantalla completa lo puedes hacer o pasando tu .bat a .exe y haciendo que se ejecute a pantalla completa


salu2s.





Mensaje Editado el 22:45:56 16/02/2010

Mensaje Editado el 23:08:58 16/02/2010
16/02/2010 22:45:43 
mahamoti
Aprendiz nivel 3
Arreglando las imágenes

Mensajes: 87
Registrad@:
25/06/2008
Estado: Desconectad@
Ir Arriba
RE: Un par de preguntas sobre batch

vale, o sea, para designar un color distinto a uno de los submenus (o subcategorias), la sintaxis seria

":nombre menu
cls
color XX"

me ekivoco???

y lo de pantalla completa. sabia que se puede llamar a otro .bat para hacerlo. pero, se hace a traves de un comando que abre la shell en pantalla completa. imagino, que añadiendo de alguna manera ese comando al principio del .bat, tambien podria abrirlo en pantalla completa. por pura logica. si puede llamar a otro archivo en pantalla completa, porque no ha si mismo??

aunque, ahora pensandolo... se podria llamar a si mismo en pantalla completa???
lo voy a probar, pero, aun asi, me gustaria que me dijerais. porque, no soy experto en batch, y cada dos por tres, la jodo y fallo en algo XDD


x cierto, que esta mañana, programando esto me han surgido otras dos preguntas. una de ellas, yo mismo me la he conseguido resolver. pero, la pongo aki por si a alguien le sirve de ayuda.

- ¿como hacer avanzar el codigo cuando el usuario pulse intro, pero sin importar lo que haya escrito? al definir la respuesta, no rellenamos nada. kedaria "if "%XXX%"== goto XXXX". lo e probado y funciona. cuando el usuario da a intro, el codigo avanza a goto XXXX

- ¿como hacer que en la respuesta, el codigo encuentre ciertas palabras que le hagan avanzar a un punto u otro? me xplico. es un programa que interactua con el usuario. en un punto determinado (y si funciona, lo are   en mas sitios), el programa deberia reconocer ciertas palabras o cosas en la respuesta para avanzar. asi, x ejemplo, cuando el usuario escriba bien o feliz... el codigo avance al punto X. mientras que si detecta mal, enfadado, triste... el codigo avance a XX. supongo q seria algo asi:
"if "%men%"==XXXXX goto happy
if "%men%"==XXXXX goto bad"

las XXXXX son los espacios q no se como rellenar, para q detecte una o mas de las palabras de la respuesta del usuario, en vez de la respuesta completa, que es lo que se define abitualmente...


no se si me entendeis.

gracias por la ayuda prestada asta aora.




http://usuarios.lycos.es/biaweb/
17/02/2010 16:56:20 
kili4n
Maestro Nivel 2
Arreglando las imágenes

Mensajes: 459
Registrad@:
22/07/2008
Estado: Desconectad@
Ir Arriba
RE: Un par de preguntas sobre batch

Pues sencillamente haces una comparacion por ejemplo:

if %men% == "mahamoti" goto bien
if %men% == "kilian" goto mal

un saludo!


    >>> SpazeMonkys! <<
17/02/2010 17:06:47 
mahamoti
Aprendiz nivel 3
Arreglando las imágenes

Mensajes: 87
Registrad@:
25/06/2008
Estado: Desconectad@
Ir Arriba
RE: Un par de preguntas sobre batch

he probado con ese codigo que dices, y no me funciona

yo lo que quiero es que el programa detecte entre toda la respuesta una palabra, y en consecuencia vaya a un sitio u otro.

si la respuesta para men en tu codigo es, x ejemplo, "bueno, mahamoti intenta hacer algo muy muy xtraño", q el programa me lleve a bien (que, mostraria un texto de "mahamoti rules")
pero, si la respuesta es "si, kilian intenta ayudar", pues q lleve a "Kilian es maestr nivel 2"...

no se si me consigo xplicar...


http://usuarios.lycos.es/biaweb/
17/02/2010 18:10:15 
HeR0
Maestro Nivel 3
Arreglando las imágenes

Mensajes: 642
Registrad@:
29/10/2008
Estado: Desconectad@
Ir Arriba
RE: Un par de preguntas sobre batch

weenas, uso de variables, no?

aqui un pequeño tuto - Variables en batch

saludos



17/02/2010 18:31:22 
mahamoti
Aprendiz nivel 3
Arreglando las imágenes

Mensajes: 87
Registrad@:
25/06/2008
Estado: Desconectad@
Ir Arriba
RE: Un par de preguntas sobre batch

gracias hero.

en realidad, ste tuto me abria veido muy muy bien hace una semana, porque no sabia por donde coger las variables XD. pero me coji los codigos de kili4n y jhavy y ya consegui comprenderlas...

lo que en realidad quiero establecer dentro de una variable, otra variable.

a ver que me explique. tengo la variable "men".
para esa variable, la respuesta del usuario es multiple e indefinida.
pero, se que en esa respuesta multiple e indefinida, va a haber una serie de palabras concretas (porque, con la "pregunta" que le hago, le obligo a contestar entorno a un tema).
y, kiero que el programa reconozca esa serie de palabras para establecer la respuesta para la variable "men".

ejemplo en codigo, para que lo veamos más claro, con dos posibilidades, para ilustrar lo que digo. marco en rojo la respuesta del usuario, en azul mis comentarios y se keda en blanco el codigo del programa:

:men
set /p men= ¿Como estas hoy?
Bien. Estuve de compras con mi novia y luego fuimos al cine.
Mal. He discutido con mi novia.

if "%men%"== "bien" goto
if "%men%"== "mal" goto
El programa debe buscar en la repuesta una de las palabras establecidas (en azul), para actuar en consecuencia de ello. pero, la respuesta nunca sera solo esa palabra.

me consigo explicar???
es que, si no consigo explicarme bien y que entendais exactamente que es lo que quiero, dudo mucho que me podais ayudar...

xau



http://usuarios.lycos.es/biaweb/


Mensaje Editado el 19:31:39 17/02/2010

Mensaje Editado el 19:32:08 17/02/2010
17/02/2010 19:31:05 
HeR0
Maestro Nivel 3
Arreglando las imágenes

Mensajes: 642
Registrad@:
29/10/2008
Estado: Desconectad@
Ir Arriba
RE: Un par de preguntas sobre batch

entonces por lo que entiendo tendrias que tener una sincronizacion con las palabras en azul(bien , mal) y las palabras en rojo.   es eso? no se como poner varias palabras "clave" (ejemplo (bien, joya , de lujo - pesimo , malisimo , no le pude cojer) creo es esto, no?
osea que si te pone bien , joya , de lujo > el bat te de como respuesta "Bien. Estuve de compras con mi novia y luego fuimos al cine. " y te dirija a www.kamasutra.com con start.

o sino ya estarias hablando de inteligencia artificial, me parece... u.u

saludos



18/02/2010 17:37:04 
mahamoti
Aprendiz nivel 3
Arreglando las imágenes

Mensajes: 87
Registrad@:
25/06/2008
Estado: Desconectad@
Ir Arriba
RE: Un par de preguntas sobre batch

si bueno. es una "inteligencia artificial", pero programada.

as dado con la palabra que no me salia. claves.

si, lo que quiero es definir varias claves que apareceran sí o sí en la respuesta. de tal forma que, cuando detecte una de esas claves, el .bat salte a un punto determinado del programa. mientras que si detecta otra clave distinta (en principio, seria contraria a la primera), salte a otro sitio distinto.

el rojo, es la respuesta del usuario a la primera pregunta del bat. seria un dialogo como

.bat: ¿Qué tal te ha ido el día?
.usuario: Bien. Estuve de compras con mi novia y luego fuimos al cine.
.bat (encuentra la palabra clave "bien"; salta a :ok): Me alegra.

o por el contrario

.bat: ¿Qué tal te ha ido el día?
.usuario: Mal. He discutido con mi novia.
.bat (encuentra la palabra clave "mal"; salta a :bad): ¿En serio? Quizá quieras hablar de ello. Dicen que ayuda en los malos momentos


creo que esta vez me he conseguido explicar. es que, es un poco complejo, porque lo tengo en la cabeza (bueno, y en papel XD), pero no consigo explicarlo.

aunque kiza resulte muy dificil, complejo... en realidad no lo es. es solo ese punto. el que reconozca unas palabras clave, para saltar a un sitio u a otro. el resto del programa lo tengo hecho. pero me falta integrar eso para que funcione correctamente. porque de momento, funciona en las partes que solo puede elegir una respuesta ya programada. o en las partes donde no importa la respuesta.

os lo voy a resumir un poco, para ver si conseguimos entenderlo todos XD
el .bat es una personalidad (una inteligencia artificial un poco cortita, que solo responde a lo que tiene programado). hay tres "secciones" segun la pregunta/respuesta

- primera seccion: el .bat te da a elegir en un menu una opcion u otra. por lo tanto, el usuario teclea 1 ó 2 ó 3...

- segunda seccion: el .bat pregunta algo. da igual qué responda el usuario, el .bat va a saltar al siguiente punto.

- tercera seccion: el. bat pregunta algo. en la respuesta del usuario tiene que localizar una palabra clave que le haga saltar a un sitio o a otro.


estas tres secciones no van en este orden. es decir, a lo largo del codigo, se mezclan y entremezclan, dependiendo, como ya he dicho, de la pregunta/respuesta.

espero que sirva para ilustraros un poco que es lo que quiero...


http://usuarios.lycos.es/biaweb/
18/02/2010 18:30:47 


REGÍSTRATE PARA PODER ENVIAR UN MENSAJE (tardas 20 segundos)

Copyright ForoHack.com