elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

á

 


Tema destacado: Rompecabezas de Bitcoin, Medio millˇn USD en premios


+  Foro de elhacker.net
|-+  Programaciˇn
| |-+  Scripting
| | |-+  Men˙ avanzado en Batch
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Men˙ avanzado en Batch  (Leído 3,139 veces)
RTN-House

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Men˙ avanzado en Batch
« en: 27 Diciembre 2014, 21:05 pm »

Hola amigos,
hace tiempo vengo creando en mi oficina un men˙ avanzado en batch (como se describe en el tÝtulo)
Ahora pues, necesito vuestras aportaciones y respuestas para poder reparar fallos, o simplemente aportar nuevas ideas.
Programa:
Código
  1. @echo off
  2. color 1A
  3. Title  Le saluda RTN-House
  4. set/p nombre=Escribe tu nombre y oprime Enter.
  5. set/p apellido=Escribe tu primer apellido:
  6. set/p apellido2=Escribe tu segundo apellido:
  7. cls
  8. @ECHO off
  9. ECHO  CARGANDO: ██
  10. Ping localhost -n 2 >nul
  11. cls
  12. @Echo off
  13. ECHO  CARGANDO: ████████    
  14. Ping localhost -n 2 >nul
  15. cls
  16. color a
  17. ECHO Introduce la contrase˝a:
  18. set /P Password=
  19. if %password%==[b]neilblack[/b] goto OK
  20. :NO_OK
  21. ECHO Password incorrecta...
  22. ECHO Pulsa una tecla para volver a intentarlo...
  23. GOTO INICIO
  24. :OK
  25. ECHO ííContrase˝a correcta!!
  26. ECHO Sigue...
  27. @ECHO off
  28. ECHO  CARGANDO: ██
  29. Ping localhost -n 2 >nul
  30. cls
  31.  
  32. @Echo off
  33. ECHO  CARGANDO: █████    
  34. Ping localhost -n 2 >nul
  35. cls
  36.  
  37. @ECHO off
  38. ECHO  CARGANDO: ██████████
  39. Ping localhost -n 2 >nul
  40. cls
  41.  
  42. :Start
  43. Title Menu RTN-House   \,,/(-.-)\,,/
  44. cls
  45. echo                                   %TIME%
  46. ECHO                 ════════════════════════════════════════════════════
  47. ECHO                    ///..==[Bienvenido %nombre% %apellido% %apellido2%]==..///    
  48. ECHO                 ════════════════════════════════════════════════════
  49. echo                         1 - Instant Shutdown
  50. echo                         2 - 5 Minute Count Shutdown
  51. echo                         3 - Logoff
  52. echo                         4 - Shutdown Abort
  53. echo                         5 - 5 Minute Count Restart
  54. echo                         6 - Instant Restart
  55. echo                         7 - Exit (X)
  56. echo                         8 - Refresh
  57. echo                         9 - What's the Time, Exactly?
  58. echo                        10 - Goto Facebook (When Online)
  59. echo                        11 - File Tree
  60. echo                        12 - Goto Facebook, if Blocked (When Online)
  61. echo                        13 - Normal Command Prompt Window
  62. echo                        14 - Remote -S -L -R Menu
  63. echo                        15 - Goto Playlist.com (When Online)
  64. echo                        16 - List of Blocked Websites
  65. echo                        17 - Task Manager
  66. echo                        18 - Matrix
  67. echo                        19 - Open System 32
  68. echo                        20 - Calculator
  69. echo                        21 - Paint
  70. echo                        22 - Chat With Other (Same Networked) Computers
  71. echo                        23 - DIRectory
  72. echo                        24 - ECHO ON
  73. echo                        25 - Character Map
  74. echo                        26 - Antivirus
  75. echo                        27 - RTN
  76. echo                        28 - Batch Calculator
  77.  
  78. set Choice=
  79. set /p Choice=""
  80.  
  81. if '%Choice%'=='1' goto insta
  82. if '%Choice%'=='2' goto fivemin
  83. if '%Choice%'=='3' goto log
  84. if '%Choice%'=='6' goto inre
  85. if '%Choice%'=='4' goto abort
  86. if '%Choice%'=='TEO' goto teo
  87. if '%Choice%'=='5' goto restart
  88. if '%Choice%'=='7' goto exit
  89. if '%Choice%'=='8' goto refresh
  90. if '%Choice%'=='9' goto time
  91. if '%Choice%'=='10' goto face
  92. if '%Choice%'=='11' goto tree
  93. if '%Choice%'=='12' goto face2
  94. if '%Choice%'=='13' goto cmd
  95. if '%Choice%'=='14' goto remote
  96. if '%Choice%'=='15' goto play
  97. if '%Choice%'=='16' goto blocked
  98. if '%Choice%'=='17' goto taskmgr
  99. if '%Choice%'=='18' goto matrix
  100. if '%Choice%'=='19' goto 32
  101. if '%Choice%'=='20' goto calc
  102. if '%Choice%'=='21' goto paint
  103. if '%Choice%'=='22' goto chat
  104. if '%Choice%'=='23' goto dir
  105. if '%Choice%'=='24' goto echoon
  106. if '%Choice%'=='25' goto chara
  107. if '%Choice%'=='26' goto antivirus
  108. if '%Choice%'=='27' goto rtn
  109. if '%Choice%'=='28' goto batcalc
  110.  
  111. cls
  112. echo '%Choice%' is not valid
  113. ping localhost -n 5 >Nul
  114. echo Try again
  115. ping localhost -n 5 >nul
  116. cls
  117. goto Start
  118.  
  119. :insta
  120. cls
  121. echo Do You Really Want to do This?
  122. shutdown -s -t 0
  123.  
  124. :fivemin
  125. shutdown -s -f -t 300 -c "You have 5 minutes to finish up"
  126. goto anything?
  127.  
  128. :log
  129. shutdown -f
  130.  
  131. msg * See You Soon!
  132.  
  133. :abort
  134. shutdown -a
  135. goto anything?
  136.  
  137. :teo
  138. msg * ooo! hidden option! hahaha!
  139. ping localhost -n 5 >nul
  140. goto 1bla
  141.  
  142. :1bla
  143. echo T 3 E O  T 3 E O  T 3 E O  T 3 E O  T 3 E O  T 3 E O  T 3 E O  T 3 E O  T 3 E O
  144. goto 1bla
  145.  
  146. :restart
  147. shutdown -r -t 300 -c "5 minutes left"
  148. goto exit2
  149.  
  150. :inre
  151. shutdown -r -t 0
  152.  
  153. :exit2
  154.  
  155. :refresh
  156. Title ...Please Wait...
  157. cls
  158. echo ...please wait...
  159. ping localhost -n 3 >nul
  160. goto Start
  161.  
  162. :time
  163. Title Menu's Exact Military Time
  164. cls
  165. echo             [ALT] + [ENTER] Activates/Deactivates Full Screen Mode
  166. echo                                ~ %TIME% ~
  167. echo                              Exact Military Time
  168. ping localhost -n .000000000000000000000001 >nul
  169. goto time
  170. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  171. goto menu
  172.  
  173. :anything?2
  174. msg * Scroll Up if You Don't See Anything.
  175. msg * Anything Else?
  176. goto Start
  177. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  178. goto menu
  179.  
  180. :face
  181. start www.facebook.com
  182. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  183. goto menu
  184.  
  185. :tree
  186. tree C:/
  187. ping localhost -n 5 >nul
  188. goto anything?2
  189. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  190. goto menu
  191.  
  192. :anything?
  193. msg * Anything Else?
  194. goto :Start
  195. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  196. goto menu
  197.  
  198. :face2
  199. start http://69.63.181.16/
  200. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  201. goto menu
  202.  
  203. :cmd
  204. start
  205. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  206. goto menu
  207.  
  208. :remote
  209. shutdown -i
  210. goto anything?
  211. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  212. goto menu
  213.  
  214. :play
  215. start www.playlist.com
  216. goto exit2
  217. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  218. goto menu
  219.  
  220. :blocked
  221. notepad c:\WINDOWS\system32\drivers\etc\hosts
  222. goto exit2
  223. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  224. goto menu
  225.  
  226. :taskmgr
  227. taskmgr.exe
  228. goto anything?
  229. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  230. goto menu
  231.  
  232. :matrix
  233. color 2
  234. echo %random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%%random%
  235. goto matrix
  236. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  237. goto menu
  238.  
  239. :32
  240. START C:/WINDOWS/System32
  241. goto anything?
  242. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  243. goto menu
  244.  
  245. :calc
  246. C:/windows\system32\calc.exe
  247. goto anything?
  248. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  249. goto menu
  250.  
  251. :paint
  252. C:\WINDOWS\SYSTEM32\mspaint.exe
  253. goto anything?
  254. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  255. goto menu
  256.  
  257. :chat
  258. C:\WINDOWS\SYSTEM32\winchat.exe
  259. goto anything?
  260. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  261. goto menu
  262.  
  263. :correct
  264. cls
  265. echo                                        Welcome RTN.
  266. ping localhost -n 3 >nul
  267. goto Start
  268. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  269. goto menu
  270.  
  271. :hinthelp
  272. cls
  273. echo It's My PSP's Password
  274. ping localhost -n 5 >nul
  275. cls
  276. goto question
  277. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  278. goto menu
  279.  
  280. :stupid
  281. cls
  282. msg * do you think i'm that stupid?!
  283. msg * I'm Insulted!
  284. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  285. goto menu
  286.  
  287. cls
  288. ping localhost -n 10 >nul
  289. goto anything?
  290. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  291. goto menu
  292.  
  293. :echoon
  294. @echo on
  295. goto Start
  296. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  297. goto menu
  298.  
  299. :chara
  300. C:\WINDOWS\SYSTEM32\CHARMAP.exe
  301. goto anything?
  302. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  303. goto menu
  304.  
  305. :anivirus
  306. start "C:\Users\Xavi_2\Desktop\Programa XAVI\Complementos\PAR1Antivirus.bat"
  307. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  308. goto menu
  309. :PIKA
  310. color 0c
  311. CLS
  312. echo                                                                                                                                            
  313. echo    `/ooooooooooooo+/-`  `oooooooooooooooooooo+ `/sso-          `ooooo.    
  314. echo    /yyyyyyyyyyyyyyyyyy+``yyyyyyyyyyyyyyyyyyyys :yyyyyo.        `yyyyy-    
  315. echo    /yyyys::::::::+syyyys.///////+yyyyy+/////// /yyyyyyy/`      `yyyyy-    
  316. echo    /yyyys         .yyyyy/       -yyyyy`        /yyyyyyyys:     `yyyyy-    
  317. echo    /yyyys         .syyyy/       -yyyyy`        :yyyyyyyyyyo-   `yyyyy-    
  318. echo    /yyyys--------/syyyys`       -yyyyy`        :yyyys-oyyyyy+` `yyyyy-    
  319. echo    /yyyyyyyyyyyyyyyyyy+`        -yyyyy`        :yyyys` :syyyyy/.yyyyy-    
  320. echo    /yyyyyooooosyyyyy+`          -yyyyy`        :yyyys   `/yyyyysyyyyy-    
  321. echo    /yyyys      /yyyyy/          -yyyyy`        :yyyys`    .oyyyyyyyyy-    
  322. echo    /yyyys       :yyyyy+`        -yyyyy`        :yyyys       -syyyyyyy-    
  323. echo    /yyyys        -yyyyyo`       -yyyyy`        :yyyys        `/syyyyy-    
  324. echo    /yyyyo         .syyyys.      -yyyyy`        :yyyys`         `+yyyo`    
  325. echo     ````            `````        `````          ````             ```                                                                                
  326.  
  327.  
  328. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  329. goto menu
  330.  
  331. :batcalc
  332. cls
  333. :begin
  334. echo --------------------------------------------------------------
  335. echo Welcome to Batch Calculator
  336. echo --------------------------------------------------------------
  337. set /p sum=
  338. set /a ans=%sum%
  339. echo = %ans%
  340. echo --------------------------------------------------------------
  341. cls
  342. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  343. goto menu[/quote]
  344. Podemos implantar un sistema de protecciˇn de contrase˝as muy efectivo (para principiantes), el sistema de shutdown:
  345. [quote]@echo off
  346. color a
  347. Title Password Page
  348. :question
  349. set /a tries=2
  350. :top
  351. echo Teo's Folder
  352. echo Please Enter Password
  353. echo ----------------------------------------------
  354. echo %tries% attempt(s) left.
  355. echo ----------------------------------------------
  356.  
  357. set /p pass=
  358. if %pass%==systemxavi goto correct
  359. rem            !!!!!!!!!!!!!!!!!!!!4123 can be substituted with anything, cause it's your password!!!!!!!!!!!!!!!!!
  360. set /a tries=%tries -1
  361. if %tries%==0 goto penalty
  362.  
  363. cls
  364. goto top
  365.  
  366. :penalty
  367. echo Sorry, too many incorrect passwords, initiating shutdown.
  368. start shutdown -s -f -t 300 -c "Should have asked for permission...SHUTDOWN INITIATED"
  369. exit[/quote]
  370.  
  371. Acoplar un men˙ un poco mßs "fantasioso":
  372. [quote]@echo off
  373. title  .:Bother v0.1:.
  374. MODE CON: COLS=89 LINES=35
  375.  
  376.  
  377.  
  378.  
  379. color a
  380. echo                                            │
  381. echo   MOMENTO DE EJECUCION:                    │
  382. echo     FECHA - %DATE%.                    │                    creado por RTN-House
  383. echo     HORA  - %TIME%.                   │                                        
  384. echo                              ┌─────────────┴─────────────┐
  385. echo                              │                           │
  386. echo                              │    ╔══════════════════╗   │
  387. echo ─────────────────────────────│    ║    RTN v0.2.7   ║   │──────────────────────────────
  388. echo                              │    ╚══════════════════╝   │
  389. echo                              │                           │
  390. echo                              └──────────────────────────┘
  391. echo                                            │
  392. echo                                            │
  393. echo                              ┌-------------┴--------------┐
  394. echo                              Ţ  ELIMINA EL VIRUS OCULTA   Ţ
  395. echo                              Ţ CARPETAS, ACCESOS DIRECTOS Ţ
  396. echo                              Ţ  Y EJECUTABLES INFECTADOS  Ţ
  397. echo                              └---------------------------┘  
  398. echo                                            │
  399. echo                             ┌──────────────┴───────────────┐
  400. echo                             │  1.- ELIMINAR VIRUS DE USB   │
  401. echo                             │  2.- INFOMACION DEL PROGRAMA │
  402. echo                             │  3.- SALIR (CTRL+C)          │            
  403. echo                             └─────────────────────────────┘
  404. echo                                            │
  405. echo                                            │                                        
  406. echo                                            │                                          
  407. echo                                            │
  408. echo ─────────────────────────────────────────────────────────────────────────────────────────
  409.  
  410.  
  411.  
  412. pause[/quote]
  413.  
  414. O por otra parte darle un dise˝o con cuadrados, tal que asÝ:
  415. [quote]@echo off
  416. title Menu Dise˝o
  417. echo Menu
  418. ECHO. ┌─┐ ┌─────────────────────────────┐
  419. ECHO. │1│ │ AGREGAR ATENCION │
  420. ECHO. └─┘ └─────────────────────────────┘
  421. ECHO. ┌─┐ ┌─────────────────────────────┐
  422. ECHO. │2│ │ ELIMINAR ATENCION │
  423. ECHO. └─┘ └─────────────────────────────┘
  424. ECHO. ┌─┐ ┌─────────────────────────────┐
  425. ECHO. │3│ │ VISUALISAR ATENCIONES │
  426. ECHO. └─┘ └─────────────────────────────┘
  427. ECHO. ┌─┐ ┌─────────────────────────────┐
  428. ECHO. │4│ │ ATENCIONES ELIMINADAS │
  429. ECHO. └─┘ └─────────────────────────────┘
  430. ECHO. ┌─┐ ┌─────────────────────────────┐
  431. ECHO. │5│ │ SALIR │
  432. ECHO. └─┘ └─────────────────────────────┘
  433.  
  434. ECHO SU OPCION:
  435. SET /P opc=----
  436. if %opc%==1 goto *
  437. if %opc%==2 goto *
  438. if %opc%==3 goto *
  439. if %opc%==4 goto *
  440. if %opc%==5 goto Salir

PD: la contrase˝a del programa es neilblack

Saludos y aporten ideas.
Desde el PC, RTN'House


« Última modificación: 27 Diciembre 2014, 21:43 pm por Eleкtro » En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.709



Ver Perfil
Re: Men˙ avanzado en Batch
« Respuesta #1 en: 27 Diciembre 2014, 21:24 pm »

Buenas!

1) Debes utilizar las etiquetas para insertar cˇdigo.

2) ┐Por quÚ motivo posteas un Batch-Script en el subforo de C++?, sabes perfectamente que este no es el lugar permitido, ya que te has paseado por la secciˇn de Scripting.

Lee las normas del foro...

Saludos!



EDITO:

No he examinado a fondo el cˇdigo, ya que con la cita y sin etiquetas geshi... dificulta la lectura.

1) Haces demasiada repeticiˇn de cˇdigo, los strings que repites deberÝas almacenarlos en una variable, y utilizarla.

2) De hecho, las 20 o 30 repeticiones que haces de estas instrucciones:
Código:
ECHO PRESIONE ENTER PARA REGRESAR AL MENU
pause >nul
goto :menu
Las puedes simplificar poniÚndolas en un ˙nico mÚtodo, y llamarlo en una sola instrucciˇn.

2) El backslash en Windows se escribe "\", no "/", estß considerado una mala prßctica de programaciˇn.

3) Las condicionales de "If %choice%==" puedes simplificarlo en una sola instrucciˇn dinßmica, utilizando el comando CHOICE.exe (Goto :%ErrorLevel%), aunque para ello primero deberßs modificar el nombre de las etiquetas de los mÚtodos, por Ýndices n˙mericos (:1, :2, etc...).

4) En lugar de escribir rutas absolutas que apunten hacia archivos del sistema, lo correcto es utilizar las variables de entorno (%SystemRoot%\System32\...)

EDITO:

5) La instrucciˇn que usas para simular el efecto Matrix, usando una linea de miles de caracteres, es simplemente lo mßs horrible que he visto, pero no por la tÚcnica en sÝ, sino por que dificulta la lectura del cˇdigo tener que desplazarse horizontalmente para leer la linea... no es nada productivo, horrible.
Al menos podrias haber hecho una especie de indentaciˇn utilizando varias repeticiones del comando Echo, te sugiero que edites el cˇdigo que has posteado arriba para mejorar ese detalle por que de verdad es muy agobiante ver instrucciones tan largas en un cˇdigo...

Busca el modo de reemplazar esa instrucciˇn apra hacer lo mismo en menos lineas, como por ejemplo asÝ:

Código
  1. @Echo OFF & SetLocal EnableDelayedExpansion
  2.  
  3. :matrix
  4. color 2
  5. For /L %%# in (0, 1, %Random:~0,2%) Do (<Nul Set /P="!random!")
  6. goto matrix
  7. ECHO PRESIONE ENTER PARA REGRESAR AL MENU
  8. goto menu


« Última modificación: 27 Diciembre 2014, 22:01 pm por Eleкtro » En línea


Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Menu un poco mas avanzado
Multimedia
circus2003 3 1,056 Último mensaje 24 Mayo 2005, 20:57 pm
por Sourraund
Batch avanzado
Scripting
DProduct 3 4,292 Último mensaje 27 Diciembre 2014, 21:19 pm
por Eleкtro
MOVIDO: Men˙ avanzado en Batch
Programaciˇn C/C++
Eternal Idol 0 758 Último mensaje 27 Diciembre 2014, 21:35 pm
por Eternal Idol
[BATCH] (RESUELTO) AYUDA RENOMBRADOR AVANZADO
Scripting
54n4r0r 1 1,047 Último mensaje 9 Abril 2016, 19:05 pm
por 54n4r0r
Creaciˇn de un menu avanzado
Scripting
telururo 0 496 Último mensaje 3 Noviembre 2018, 13:06 pm
por telururo
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines