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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


  Mostrar Mensajes
Páginas: 1 ... 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 [1130] 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 ... 1236
11291  Programación / Scripting / Re: [BATCH] ¿Se puede sacar la duracion de una cancion? en: 14 Abril 2012, 12:37 pm
Nativamente hablando no puedes hacer nada para obtener la duración de un archivo de música.

Con Mediainfo si que puedes.
http://mediainfo.sourceforge.net/es/Download/Windows

En consola:
Código:
mediainfo "archivo.mp3" "--Inform=General;%Duration/String3%"

En un script:
Código:
mediainfo "archivo.mp3" "--Inform=General;%%Duration/String3%%"

Citar
Duration                       : Play time of the stream in ms
Duration/String            : Play time in format : XXx YYy only, YYy omited if zero
Duration/String1          : Play time in format : HHh MMmn SSs MMMms, XX omited if zero
Duration/String2          : Play time in format : XXx YYy only, YYy omited if zero
Duration/String3          : Play time in format : HH:MM:SS.MMM



Pienso que lo mejor sería que hicieses una lista de reproducción. Para añadir todos los archivos a la lista del reproductor que usas. Así no tienes que pulsar enter, Ni averiguar el tiempo.
http://foro.elhacker.net/scripting/script_en_batch_para_ordenar_un_poco-t356306.0.html;msg1727721#msg1727721

Un ejemplo, Para winamp:
PD: Cambia la ruta de la variable "carpeta" si es necesario.

Código
  1. @Echo OFF
  2.  
  3. :: Generador de listas de música aleatorias.bat
  4. :: By Elektro H@cker
  5.  
  6. Title %~n0
  7. Mode con cols=50 lines=3
  8. Setlocal enabledelayedexpansion
  9. chcp 1252 >NUL
  10.  
  11. Set "Carpeta=%cd%"
  12.  
  13. Echo: Espere, Se esta randomizando la lista...
  14. Echo #EXTM3U>"%Temp%\Lista Winamp.tmp"
  15. For /F "Tokens=*" %%$ in ('Dir /B /S "%CARPETA%" ^| Findstr /I /R ".aif .flac .m4a .mid .mp3 .ogg .wav .wma"') do (Echo !Random!!Random!!Random!;%%$>>"%Temp%\Lista Winamp.tmp")
  16. Echo #EXTM3U>"%Temp%\Lista Winamp.m3u"
  17. For /F "Tokens=2* Delims=;" %%$ in ('Type "%Temp%\Lista Winamp.tmp" ^| Sort ') do (Echo %%$>>"%Temp%\Lista Winamp.m3u")
  18. Start /B C:"\Program Files (x86)\Winamp\winamp.exe" "%Temp%\Lista Winamp.m3u"

Salu2.
11292  Sistemas Operativos / Windows / Re: Tips para Windows 8 (Actualizado el 14/04/2012) en: 14 Abril 2012, 09:16 am
Windows 8 USB Installer Maker (Crea un USB Bootable de Windows 8)



Descarga: http://apps.codigobit.info/2012/03/windows-8-usb-installer-maker.html
11293  Informática / Software / Re: existe un software para localizar ip? en: 13 Abril 2012, 08:11 am
Son iguales de fiables los "localizadores web" que llamas tu que un programa que localize una ip.

De hecho debe ser lo mismo, hacer una consulta a una base de datos.

Cierto, Es lo mismo.

Nunca he usado software para eso, Porque es lo mismo, Pero este me gusta mucho:

link: [Perl Tk] LocateIP 0.4



PD: Descarga Perl, TK, y PerlAPP, Y podrás convertirlo a exe.

Salu2.
11294  Sistemas Operativos / Windows / Re: necesito validar windows 7 enterprise 64 bits en: 13 Abril 2012, 04:20 am
Que razón tiene Simorg.

Usar el buscador del foro, Muchas veces da mejores resultados que Google.


saludos
11295  Programación / Scripting / Re: [BATCH] GTC (Google Translate Console) en: 12 Abril 2012, 20:57 pm
ME dice que GTC no se reconoce y me manda como si hubiera habierto el cmd normal me sale el eco y todo.

No entiendo el problema que tienes.

Escribe en consola:
Código
  1. echo %pathext%
Asegúrate de que tienes la extensión BAT.

Ejecuta la consola en la misma carpeta que el GTC, o metelo en la carpeta system32

11296  Informática / Software / Re: Ediciones oficiales de Windows 7 con SP1 integrado (Descargas directas aquí) en: 12 Abril 2012, 20:30 pm
gracias
11297  Programación / Scripting / Re: [BATCH] GTC (Google Translate Console) en: 12 Abril 2012, 16:41 pm
Por cierto, ¿como consigues esos gráficos en tus aplicaciones, como el de GTC? ¿Es ASCII art? Le da un buen toque a la consola.

Gracias por el comentario  :P

Si, Es Art ASCII.
Las fuentes de estilos las saqué de internet hace un tiempo y las guardé, No recuerdo la web, Pero ahora los hago con un programa en Ruby que tengo a medias (Es una taréa muy lenta, Más de 100 estilos de letra + caracteres especiales, Hay que "setear" letra por letra) Me falta terminarlo y hacer la gui.

Se llamará Art ASCII Factory

En cuanto lo termine todos los interesados podrán hacer facilmente esas letras xD

PD: He actualizado el GTC a la v1.1

EDITO: La versión obligatoria de wget para usar el script (Eso parece ser) es esta: http://www.mediafire.com/?41476m73gbza1aj

Salu2!
11298  Programación / Scripting / [BATCH] GTC (Google Translate Console) en: 12 Abril 2012, 15:20 pm


Una utilidad para traducir frases al vuelo desde la consola.

Citar
Modo de empleo:
   GTC [Idioma de entrada] [Idioma de salida] [Texto]

 Ejemplo:
   GTC ES "Hello World"

 (El idioma de entrada se reconoce automaticamente por defecto.)

 Idiomas:
Código:
 AF: Africano    AR: Árabe        AZ: Azerbaijani   BE: Bielorruso
 BG: Búlgaro     BN: Bengalés     CA: Catalàn       CS: Checo
 CY: Galés       DA: Danés        DE: Alemàn        EL: Griego
 EN: Inglés      EO: Esperanto    ES: Espa±ol       ET: Estonio
 EU: Euskera     FA: Persa        FI: Finlandés     FR: Francés
 GA: Irlandés    GL: Gallego      GU: Gujarati      HI: Hindú
 HR: Croata      HT: Haitiano     HU: Húngaro       HY: Armenio
 ID: Indonesio   IS: Islandés     IT: Italiano      IW: Hebreo
 JA: Japonés     KA: Georgiano    KN: Kanada        KO: Coreano
 LA: LatÝn       LT: Lituano      LV: Letón         MK: Macedonio
 MS: Malayo      MT: Maltés       NL: Holandés      NO: Noruego
 PL: Polaco      PT: Portugués    RO: Rumano        RU: Ruso
 SK: Eslovaco    SL: Esloveno     SQ: Albanés       SR: Serbio
 SV: Sueco       SW: Suajili      TA: Tamil         TE: Telugu
 TH: Tailandés   TL: Tagalo       TR: Turco         UK: Ucraniano
 UR: Urdu        VI: Vietnamita   YI: Yiddish
 ZH-CN: Chino    (Simplificado)
 ZH-TW: Chino    (Tradicional)

IMPORTANTE:
Para usar el script, Es necesario la utilidad wget.exe.
http://sourceforge.net/projects/gnuwin32/files/wget/1.11.4/wget-1.11.4-bin.zip/download PARECE SER QUE NO FUNCIONA
http://www.mediafire.com/?41476m73gbza1aj
(Necesariamente esa versión)

Capturas:
   
   

El code:
Código:
@Echo OFF
Title GoogleTranslateConsole v1.3
:: By Elektro H@cker

Wget 1>nul 2>&1
IF %Errorlevel% EQU 9009 (Exit /B 1)

Goto :Errorcontrol

:LOGO
Echo+
Echo:         GGGGGGGGGGGGG  TTTTTTTTTTTTTTTTTTTTTTT          CCCCCCCCCCCCC
Echo:      GGG::::::::::::G  T:::::::::::::::::::::T       CCC::::::::::::C
Echo:    GG:::::::::::::::G  T:::::::::::::::::::::T     CC:::::::::::::::C
Echo:   G:::::GGGGGGGG::::G  T:::::TT:::::::TT:::::T    C:::::CCCCCCCC::::C
Echo:  G:::::G       GGGGGG  TTTTTT  T:::::T  TTTTTT   C:::::C       CCCCCC
Echo: G:::::G                        T:::::T          C:::::C             
Echo: G:::::G                        T:::::T          C:::::C             
Echo: G:::::G    GGGGGGGGGG          T:::::T          C:::::C             
Echo: G:::::G    G::::::::G          T:::::T          C:::::C             
Echo: G:::::G    GGGGG::::G          T:::::T          C:::::C             
Echo: G:::::G        G::::G          T:::::T          C:::::C             
Echo:  G:::::G       G::::G          T:::::T           C:::::C       CCCCCC
Echo:   G:::::GGGGGGGG::::G        TT:::::::TT          C:::::CCCCCCCC::::C
Echo:    GG:::::::::::::::G        T:::::::::T           CC:::::::::::::::C
Echo:      GGG::::::::::::G        T:::::::::T             CCC::::::::::::C
Echo:         GGGGGGGGGGGGG Google TTTTTTTTTTT Translate      CCCCCCCCCCCCC Console
Echo+
Goto :EOF

:HELP
Echo: Modo de empleo: | MORE
Echo:   GTC [Idioma de entrada] [Idioma de salida] [Texto] |MORE
Echo: Ejemplo:  | MORE
Echo:   GTC ES "Hello World" | MORE

Echo: (El idioma de entrada se reconoce automaticamente por defecto.) | MORE

Echo: Idiomas: | MORE
Echo: AF: Africano    AR: µrabe        AZ: Azerbaijani   BE: Bielorruso
Echo: BG: B£lgaro     BN: Bengal‚s     CA: Catal…n       CS: Checo
Echo: CY: Gal‚s       DA: Dan‚s        DE: Alem…n        EL: Griego
Echo: EN: Ingl‚s      EO: Esperanto    ES: Espa¤ol       ET: Estonio
Echo: EU: Euskera     FA: Persa        FI: Finland‚s     FR: Franc‚s
Echo: GA: Irland‚s    GL: Gallego      GU: Gujarati      HI: Hind£
Echo: HR: Croata      HT: Haitiano     HU: H£ngaro       HY: Armenio
Echo: ID: Indonesio   IS: Island‚s     IT: Italiano      IW: Hebreo
Echo: JA: Japon‚s     KA: Georgiano    KN: Kanada        KO: Coreano
Echo: LA: Latín       LT: Lituano      LV: Let¢n         MK: Macedonio
Echo: MS: Malayo      MT: Malt‚s       NL: Holand‚s      NO: Noruego
Echo: PL: Polaco      PT: Portugu‚s    RO: Rumano        RU: Ruso
Echo: SK: Eslovaco    SL: Esloveno     SQ: Alban‚s       SR: Serbio
Echo: SV: Sueco       SW: Suajili      TA: Tamil         TE: Telugu
Echo: TH: Tailand‚s   TL: Tagalo       TR: Turco         UK: Ucraniano
Echo: UR: Urdu        VI: Vietnamita   YI: Yiddish       
Echo: ZH-CN: Chino    (Simplificado)
Echo: ZH-TW: Chino    (Tradicional)
Exit /B 1

:Errorcontrol
Setlocal Enabledelayedexpansion
Set "Langs=AF:Africano, AR:µrabe, AZ:Azerbaijani, BE:Bielorruso, BG:B£lgaro, BN:Bengal‚s, CA:Catal…n, CS:Checo, CY:Gal‚s, DA:Dan‚s, DE:Alem…n, EL:Griego, EN:Ingl‚s, EO:Esperanto, ES:Espa¤ol, ET:Estonio, EU:Euskera, FA:Persa, FI:Finland‚s, FR:Franc‚s, GA:Irland‚s, GL:Gallego, GU:Gujarati, HI:Hind£, HR:Croata, HT:Haitiano, HU:H£ngaro, HY:Armenio, ID:Indonesio, IS:Island‚s, IT:Italiano, IW:Hebreo, JA:Japon‚s, KA:Georgiano, KN:Kanada, KO:Coreano, LA:Latín, LT:Lituano, LV:Let¢nMK:, Macedonio, MS:Malayo, MT:Malt‚s, NL:Holand‚s, NO:Noruego, PL:Polaco, PT:Portugu‚s, RO:Rumano, RU:Ruso, SK:Eslovaco, SL:Esloveno, SQ:Alban‚s, SR:Serbio, SV:Sueco, SW:Suajili, TA:Tamil, TE:Telugu, TH:Tailand‚s, TL:Tagalo, TR:Turco, UK:Ucraniano, UR:Urdu, VI:Vietnamita, YI:Yiddish, ZH-CN:Chino Simplificado, ZH-TW:Chino Tradicional"
IF "%~3" EQU "" (
Echo "%LANGS%" | Find /I "%~1:" >NUL
IF !Errorlevel! EQU 1 (Echo Idioma no reconocido & Exit /B 1)
) ELSE (
Echo "%LANGS%" | Find /I "%~1:" >NUL
IF !Errorlevel! EQU 1 (Echo Idioma no reconocido & Exit /B 1)
Echo "%LANGS%" | Find /I "%~2:" >NUL
IF !Errorlevel! EQU 1 (Echo Idioma no reconocido & Exit /B 1)
)
Setlocal Disabledelayedexpansion

:Translate
Call :LOGO
IF "%~1" EQU "" (Start /B CMD /Q %0)
IF "%~2" EQU "" (Goto :HELP)
IF "%~3" EQU "" (Set "LangIN=auto" & Set "LangOUT=%~1" & Set "String=%~2") ELSE (Set "LangIN=%~1" & Set "LangOUT=%~2" & Set "String=%~3")
Set "String=%String: =+%"
Set "String=%String:...=;;%"
Set "String=%String:.=,,%"
Set "String=%String:!=(;)%"
WGET -U "Mozilla/5.0" -qO - "http://translate.google.com/translate_a/t?client=t&text=%STRING%&sl=%LangIN%&tl=%LangOUT%" -O "%TEMP%\GTC.html"
For /F "Tokens=* Delims=;" %%a in ('Type "%TEMP%\GTC.html"') do (Set "Body=%%a")

SET "Cut=%Body:*","=%"
CALL SET "Traduced=%%Body:%Cut%=%%"
SET "Traduced=%Traduced:[[["=%" & REM "
SET "Traduced=%Traduced: , ,=.%"
SET "Traduced=%Traduced: (;)=!%"
SET "Traduced=%Traduced: ( ;)=!%"
SET "Traduced=%Traduced:(;)=!%"
SET "Traduced=%Traduced:","=%"

:Print
Setlocal Enabledelayedexpansion
IF "%~3" EQU "" (
SET "LangINPrint=[AUTO]"
SET "LangOUTPrint=!langs:*%1:=!"
For /F "Tokens=1,* Delims=," %%# in ('Echo !LangOUTPrint!') Do (Set "LangOUTPrint=[%%#]")
) ELSE (
SET "LangINPrint=!langs:*%1:=!"
SET "LangOUTPrint=!langs:*%2:=!"
For /F "Tokens=1,* Delims=," %%# in ('Echo !LangINPrint!') Do (Set "LangINPrint=[%%#]")
For /F "Tokens=1,* Delims=," %%# in ('Echo !LangOUTPrint!') Do (Set "LangOUTPrint=[%%#]")
)
Setlocal Disabledelayedexpansion
Echo: Texto a traducir %LangINPrint% :
IF "%~3" EQU "" (Echo: [+] %~2 | MORE) ELSE (Echo: [+] %~3 | MORE)
Echo: Texto traducido %LangOUTPrint% :
Echo: [+] %Traduced%
Exit /B 0

PD: Cualquier bug o mejora comenten, Gracias.

Salu2.
11299  Media / Diseño Gráfico / Re: archivos jpeg.REM en: 12 Abril 2012, 11:19 am
La extensión .REM suele ser un añadido (REM = REMOVE) por algún programa.
En esos casos el archivo es un archivo intacto, Sigue siendo la misma extensión, El mismo archivo, Solamente que está marcado para su eliminación (Manual).
Es como un .BAK o .TMP

Simplemente renombra el archivo:
De: Archivo.jpeg.rem
A:   Archivo.jpeg
... A ver si funciona.

Salu2.
11300  Programación / Scripting / Re: [Batch] Ayuda con LOGIN en: 12 Abril 2012, 11:01 am
Bueno, A mi me pareció lo que me pareció, Pero si dices que te he malinterpretado, Podría ser, Todos vemos las cosas desde un punto de vista diferente... Tema olvidado.



Voy a analizar el script.

-
Citar
IF %op% EQU 1...
Citar
IF "%op%" EQU "1"...
Si no cierras la variable, con comillas dobles, dará error si el usuario le da a enter (Sin escribir un número) o escribe un espacio en blanco.

-
Citar
GOTO :ERROR & GOTO :MENU
Citar
CALL :ERROR & GOTO :MENU
No puedes llamar a una etiqueta y luego a otra, en el mismo comando,Ya que de la etiqueta ERROR no sales.
El "goto :Menu" lo deberías poner dentro del contenido de "Error".

-  
Citar
C:\users\%USERNAME%\...\
Citar
%Userprofile%\...\
La letra de la unidad principal no siempre es C:, Hay gente que particiona sus discos y/o le cambia la letra desde el servicio de windows...
Por eso es preferible usar la variable %Userprofile%

-  
Citar
C:\users\%USERNAME%\...
Citar
"%Userprofile%\..."
Si no cierras el argumento, con comillas dobles, Cualquier nombre de usuario que contenga un espacio dará error de sintaxis en el comando.
Ej: C:\Users\Elektro Hacker\

-
Citar
ATTRIB +H C:\users\%USERNAME%\LOGINScriptUsername.txt
Citar
ATTRIB -H C:\users\%USERNAME%\LOGINScriptUsername.txt
Echo...
ATTRIB +H C:\users\%USERNAME%\LOGINScriptUsername.txt
La función de "1) registro" de tu script, Solo funcionará una única vez, Ya que No puedes redireccionar (Escribir) en un archivo que ya está oculto, Primero tienes que desoculartlo.

-
Citar
CHOICE /M "Desea guardar esta configuracion?:"
IF %errorlevel% EQU 1 (GOTO :LOGIN)
IF %errorlevel% EQU 2 (GOTO :REGIST) else (GOTO :ERROR & GOTO :REGIST)
Citar
IF %errorlevel% EQU 1 (GOTO :LOGIN) ELSE (GOTO :REGIST)
Lo que he marcado en rojo es totalmente innecesario, Ya que choice solo permite 2 comprobaciones, no cabe lugar para una tercera. Quiero decir, O es errorlevel 1 o es errorlevel2, no más.

7º -
Citar
SET "userlogin= FOR /F "tokens=1" %%U IN ('TYPE "C:\users\%USERNAME%
\LOGINScriptUsername.txt" 2^>nul') DO (SET "%userlogin%=%user%")"
Esta es la parte más problemática del script.
No puedes hacer lo que intentas, No en Batch.
En una variable no puedes setear una función de un comando.
Las variables son para setear cadenas de contenido alfanumerico o negativas.

Ej:
Código:
Set var=abc
Set var=123
Set var=-123


Citar
"tokens=1"
Citar
"tokens=*"
1 token (Sin definir un delimitador) = Una palabra sin espacios
Si el usuario o la contraseña contienen espacios, no seprocesará el resto de la cadena.


Citar
(SET "%userlogin%=%%U")
(SET "%password%=%%U")
Citar
(SET "userlogin=%%U")
(SET "password=%%U")
La sintaxis no es correcta. Los porcentajes se usan para procesar las variables, No para setearlas (No en este caso).

11º
Citar
GOTO :LOGIN
pause>NUL
El comando "pause" nunca se llega a procesar, Ya que llamas a una etiqueta xD.

12º
Citar
FOR /F "tokens=1" %%A IN (%FILE%) DO (echo Bienvenido %%A)
Citar
Echo Bienvenido %name%
La linea es innecesaria.

Y algunos fallos menores...
- Comprobación doble innecesaria del usuario/pass después del FOR...
- No es necesario crear 2 archivos de texto



Bueno, Aqui tienes mi corrección, Espero que te sirva.
Le he echo algunas pequeñas modificaciones aparte de lo que comenté:

Código
  1. @Echo OFF
  2. TITLE LOGIN Script
  3. COLOR 0A
  4.  
  5. Echo: :: WELCOME to LOGIN Script:: | MORE
  6. Set "File=%UserProfile%\LOGINScript.txt"
  7.  
  8. :MENU
  9. Echo ------------
  10. Echo 1) Registro
  11. Echo 2) Log IN
  12. Echo 3) Salir
  13. Echo ------------ | MORE
  14. SET /P "op=Opcion: "
  15. Cls
  16. IF "%op%" EQU "1" (GOTO :REGIST)
  17. IF "%op%" EQU "2" (GOTO :LOGIN)
  18. IF "%op%" EQU "3" (Exit /B 0)
  19. Call :ERROR & GOTO :MENU
  20.  
  21. :REGIST
  22. Call :UserPass
  23. IF not defined name (Call :Error & Goto :Regist) Else (If not defined passw (Call :Error & Goto :Regist))
  24.  
  25. CHOICE /M "Desea guardar esta configuracion?: "
  26. IF %errorlevel% EQU 1 (
  27. ATTRIB -H "%FILE%" 2>NUL
  28. Echo Usuario:%name%> "%FILE%"
  29. Echo Password:%passw%>> "%FILE%"
  30. ATTRIB +H "%FILE%" 2>NUL
  31. CLS
  32. ) ELSE (GOTO :REGIST)
  33.  
  34. :LOGIN
  35. Echo: :: LOG IN :: | MORE
  36. Call :UserPass
  37. FOR /F "tokens=2 Delims=:" %%U IN ('TYPE "%FILE%" ^| Find "Usuario"') DO (SET "userlogin=%%U")
  38. FOR /F "tokens=2 Delims=:" %%U IN ('TYPE "%FILE%" ^| Find "Password"') DO (SET "password=%%U")
  39. IF "%name% %passw%" EQU "%userlogin% %password%" (GOTO :WELCOME) else (GOTO :LOGINERROR)
  40.  
  41. :UserPass
  42. Echo: Establece los siguientes parametros: | MORE
  43. SET /P "name=Usuario: "
  44. SET /P "passw=Contrasena: "
  45. Goto :EOF
  46.  
  47. :ERROR
  48. CLS
  49. Echo: ERROR: Se ha producido un error, por favor verifica los datos ingresados.
  50. Goto :EOF
  51.  
  52. :LOGINERROR
  53. CLS
  54. Echo: El usuario/contrasena no son validos, por favor verifica y vuelve a ingresar los datos. | MORE
  55. GOTO :LOGIN
  56.  
  57. :WELCOME
  58. CLS
  59. Echo Bienvenido %name% | MORE
  60. SET /P "wish= Que desea hacer?: "


Salu2.


PD: Los posts como este no se borran, La información le puede servir a alguien con el mismoproblema  :P
Páginas: 1 ... 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 [1130] 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 ... 1236
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines