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

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


  Mostrar Mensajes
Páginas: 1 ... 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 [1235] 1236
12341  Programación / Scripting / Re: Ayuda para "convertir" este VBS a BATCH en: 6 Noviembre 2011, 11:02 am
Bueno, espero haberte aclarado algo  ;)

Muchas gracias por tu respuesta, pero eso ya lo conocía

Y si, lo que intento es pasar las propiedades de un archivo (El Bitrate de un archivo de música) a una variable, pero eso no se puede ver con batch a menos que use la api de windows o la de mi ejemplo, en cualquier caso, no se usar ninguna de las dos xD

Un saludo
12342  Programación / Scripting / Re: Hacer un Batch de control de versión en: 6 Noviembre 2011, 10:49 am
No he probado demasiado mi modificación pero creo que no he cometido ningún error, ya nos cuentas  :)


Código
  1. @Echo off
  2.  
  3. Rem EleKtrO H@ckeR
  4.  
  5. Set ArchExe="menu.exe"
  6. Set Ruta1= "Unidad1:\Direct\SubDirect\"
  7. Set Ruta2= "Unidad2:\Direct\SubDirect\"
  8.  
  9. Set Item1="Ruta1\ArchExe"
  10. Set Item2="Ruta2\ArchExe"
  11.  
  12. Rem  Comienzo, pregunta por el 1º
  13. :Paso1
  14. IF EXIST "%Item1%" (goto :Paso2) ELSE (goto :End)
  15.  
  16. Rem  Si encontró el 1º, pregunta por el 2º
  17. :Paso2
  18. IF EXIST "%Item2%" (goto :Paso3) ELSE (goto :End)
  19.  
  20. ################################################################################################################################>nul
  21.  
  22. :Paso3
  23.  
  24. REM Seteamos la fecha y la hora de creacion del Item 1 e Item 2...
  25.  
  26. For /F "Tokens=1,2,3*" %%a in ('dir /tc/od "ITEM1.EXE" ^| Find "ITEM1.EXE"') do (
  27. Set Fecha_de_creacion_Item1=%%a
  28. Set Hora_de_creacion_Item1=%%b
  29. )
  30.  
  31. For /F "Tokens=1,2,3*" %%a in ('dir /tc/od "ITEM2.EXE" ^| Find "ITEM2.EXE"') do (
  32. Set Fecha_de_creacion_Item2=%%a
  33. Set Hora_de_creacion_Item2=%%b
  34. )
  35.  
  36. Rem  Compara el 1º con el 2º
  37.  
  38. :Creation Date
  39.  
  40. REM Si la fecha de creacion del item 1 es mayor que el 2...
  41. If %Fecha_de_creacion_Item1:~-0,5% GTR %Fecha_de_creacion_Item2:~-0,5% (Goto :Paso4)
  42.  
  43. REM Si la fecha de creacion del item 1 es menor que el 2...
  44. If %Fecha_de_creacion_Item1:~-0,5% LSS %Fecha_de_creacion_Item2:~-0,5% (Goto :End)
  45.  
  46. REM Si la fecha de creacion del item 1 es igual que el 2...
  47. If %Fecha_de_creacion_Item1:~-0,5% EQU %Fecha_de_creacion_Item2:~-0,5% (Goto :Creation Hour)
  48.  
  49. echo+ ERROR en la comparacion
  50.  
  51. :Creation Hour
  52.  
  53. REM Si la hora de creacion del item 1 es mayor que el 2...
  54. If %Hora_de_creacion_Item1% GTR %Hora_de_creacion_Item2% (Goto :Paso4)
  55.  
  56. REM Si la hora de creacion del item 1 es menor que el 2...
  57. If %Hora_de_creacion_Item1% LSS %Hora_de_creacion_Item2% (Goto :End)
  58.  
  59. REM Si la hora de creacion del item 1 es igual que el 2...
  60. If %Hora_de_creacion_Item1% EQU %Hora_de_creacion_Item2% (Goto :End)
  61.  
  62. echo+ ERROR en la comparacion
  63.  
  64. ################################################################################################################################>nul
  65.  
  66. Rem  Reemplaza
  67. :Paso4
  68. Copy /Y "%Item1%" "%Item2%" >nul
  69. goto :End
  70.  
  71. :End
  72. "Menu.exe"
  73.  
12343  Programación / Scripting / Re: [Batch][Aporte] Base de datos para clientes. en: 6 Noviembre 2011, 10:03 am
no entendi la parte de tu codigo chequear disco duro ?

Código
  1. echo S | chkdsk %homedrive% /F /R /X >nul

supongo que lo que no entendiste es eso

al ejecutar el chkdsk en el disco principal, windows pide una confirmación para ejecutarlo en el proximo reinicio (S/N), pues con el echo S | confirmamos S automáticamente.

/F  es para corregir los sectores dañados

/R para algo parecido

/X para demontar la unidad y poder analizarla (%homedrive%) (en el proximo reinicio del pc)


saludosss
12344  Programación / Scripting / Re: [Batch] - (Duda) Asignar varibales (En MS-DOS 6.22) en: 5 Noviembre 2011, 11:29 am
Empiezo a pensar que es una pregunta trampa...  :¬¬

http://www.computerhope.com/sethlp.htm

En esa página explica la sintaxis de SET version de MSDOS... sencillamente no se puede hacer XDDD

En otra página me he repasado todos los comandos que trae el msdos, y no he encontrado ninguno que se asemeje a lo que buscas... Ninguno parece permitir que el usuario interactue con el teclado para definir variables ...ni nada  :(


Solo se me ocurre que pruebes estos comandos a ver si sacas algo en clave xD

Código
  1. Set /?
  2.  
  3. Set help
  4.  
  5. help
  6.  



Saludos.
12345  Programación / Scripting / Re: [Batch] - (Duda) Asignar varibales (En MS-DOS 6.22) en: 5 Noviembre 2011, 04:13 am
dios mio, pero como pueden mandar trabajos sobre msdos en un ciclo??? eso no le sirve a nadie hoy en día, xD te están robando el dinero!

de todas formas... ¿Seguro que lo haces bien?:

http://en.wikipedia.org/wiki/List_of_MS-DOS_commands

Según la Wikipedia se hace exactamente igual... Pero bueno no tengo MSDOS delante para probar  :P

Código
  1. @echo off
  2. set /p var=Teclea algo y pulsa enter xD:
  3. echo %var%

Bueno, por probar que no falte... Te digo lo que se haria con ese txt bajo la consola de windows actual  :xD:

Código
  1. @echo off
  2. For /F "tokens=*" %%a in ('type "TEXTO.TXT"') do (Set Variable=%%a)
  3. echo %variable%

Suerte.  :xD
EleKtrO HackeR.
12346  Programación / Scripting / Re: [Batch][Aporte] Base de datos para clientes. en: 5 Noviembre 2011, 03:51 am
Cierto, usas muchas variables y conviene "resetearlas" al volver al :MENU, porque sino aunque dejes vacía alguna de las variables como talla dire y eso, se tomará la variable anterior... espero que se me entienda xD

aparte de eso, dejame mejorartelo un poquito lo que pueda  :xD


PD: Copia este código tal cual, para probarlo, aunque veas caracteres raros al copiar no te preocupes, en la consola salen bien las palabras con los acentos y eso  ::)

Leo es un crack con el tema de trabajar sobre archivos de texto así que yo esperaría a ver si te da una solución para una mejor busqueda sobre la lista de clientes...  ;-)




Código
  1. @echo off
  2. title Base de datos Clientes
  3. color fc
  4.  
  5. If not exist "%homedrive%\clientes.txt" (echo.>"%homedrive%\clientes.txt")
  6.  
  7.  
  8. :############################################################
  9.  
  10. REM En esta parte no he correjido nada importante, solo sintaxis y gramática xD, el "ELSE" del final...
  11.  
  12. REM Reseteando variables...
  13.  
  14.  
  15. :MENU
  16.  
  17. Set o=
  18. set check=
  19. Set de=
  20. set bo=
  21.  
  22. cls
  23. echo %time%
  24. echo  ##########
  25. echo  1.- Agregar Cliente
  26. echo  2.- Buscar dentro de la Base de datos
  27. echo  3.- Mostrar el contenido de la Base de datos
  28. echo  4.- Borrar Base de datos
  29. set /p o= Elija una opci¢n:
  30. if not defined o (goto :menu)
  31. if %o%==1 (goto :add)
  32. if %o%==2 (goto :b)
  33. if %o%==3 (goto :x)
  34. if %o%==4 (goto :dl)
  35. goto :menu
  36.  
  37.  
  38.  
  39. :############################################################
  40.  
  41. REM Aqui nos aseguramos de que ningún campo queda vacío...
  42.  
  43.  
  44. :add
  45.  
  46. set name=
  47. set dire=
  48. set n=
  49. set c=
  50. set t=
  51. set s=
  52.  
  53.  
  54. cls
  55. set /p name=- Nombre de cliente: & Call :verify name
  56. set /p dire=- Direcci¢n        : & Call :verify dire
  57. set /p n=- N£mero           : &    Call :verify n
  58. set /p c=- Compras Recientes: &    Call :verify c
  59. set /p t=- Talla            : &    Call :verify t
  60. set /p s=- Sexo             : &    Call :verify s
  61. echo Cliente   : %name%>>%homedrive%\clientes.txt
  62. echo Direcci¢n : %dire%>>%homedrive%\clientes.txt
  63. echo N£mero    : %n%>>%homedrive%\clientes.txt
  64. echo Compras   : %c%>>%homedrive%\clientes.txt
  65. echo Talla     : %t%>>%homedrive%\clientes.txt
  66. echo Sexo      : %s%>>%homedrive%\clientes.txt
  67. echo -------------------------------------------------;>>%homedrive%\clientes.txt
  68. echo Generado Correctamente.
  69. goto :menu
  70.  
  71.  
  72. set %1=Ninguno
  73. goto :eof
  74. ) ELSE (
  75. goto :eof
  76. )
  77.  
  78.  
  79. :############################################################
  80.  
  81.  
  82. REM no te recomiendo usar setlocal si hay productos o datos que contengan caracteres especiales como "Nike!" ...pues no los vas a encontrar xD
  83.  
  84. REM en el metodo de buscqueda no he podido hacer nada mejor, habria sido fácil usando tail y txtback porque cada cliente esta separado en 7 líneas, pero bueno, no me he kerido comer más el coco  :xD
  85.  
  86. :b
  87. cls
  88. set /p bo=- ¨Que desea buscar dentro de la Base de datos?:
  89.  
  90. find "%bo%" "%homedrive%\clientes.txt" >nul
  91. If %errorlevel% equ 0 (
  92. find "%bo%" "%homedrive%\clientes.txt"
  93. goto :menu
  94. ) ELSE (
  95. echo No se ha encontrado ninguna coincidencia, Intentelo de nuevo...
  96. goto :menu
  97. )
  98.  
  99.  
  100.  
  101. Goto :menu
  102.  
  103.  
  104. :############################################################
  105.  
  106.  
  107. REM Ahora el código reconoce varias respuestas (si,SI,Si,sI,sí,Sí - No,no,NO,nO) en cambio tu código solo reconocia dos (Aunque no te lo parezca así era).
  108.  
  109. :dl
  110.  
  111.  
  112. cls
  113. echo  Se borrar… la base de datos, ¨Est… seguro?  Si/No
  114. echo  Se perder…n todos los datos guardados...
  115. set /p de=^>^>
  116.  
  117. echo %de%| findstr /I "^S.$" >nul
  118. If %errorlevel% equ 0 (goto :del)
  119.  
  120. echo %de%| findstr /I "^NO$" >nul
  121. If %errorlevel% equ 0 (goto :menu)
  122.  
  123. Goto :menu
  124.  
  125. :############################################################
  126.  
  127. REM Mas vale prevenir que curar, Los HDD's a veces se estropean, mejor nos aseguramos de que la lista se borre de verdad xD
  128.  
  129.  
  130. cls
  131. echo  Borrando...
  132. ping -n 2 localhost >nul
  133.  
  134. del /q /f "%homedrive%\clientes.txt" >nul 2>&1
  135. IF %ERRORLEVEL% EQU 0 (
  136.        echo Eliminado.
  137.        pause
  138.        goto :menu
  139. ) ELSE (
  140.        cls        
  141.        echo No se pudo borrar la lista.
  142.        pause
  143. goto :checkeo
  144. )
  145.  
  146.  
  147. :############################################################
  148.  
  149. REM Y esta parte me la invento xD
  150.  
  151.  
  152. :checkeo
  153. cls
  154. echo  ¨Quiere iniciar un escaneo de errorer de su disco duro? Si/No
  155. echo  Se reiniciar… el Pc...
  156. set /p CHECK=^>^>
  157.  
  158. echo %CHECK%| findstr /I "^S.$" >nul
  159. If %errorlevel% equ 0 (
  160.             echo S | chkdsk %homedrive% /F /R /X >nul
  161.             shutdown -r -t 10
  162. )
  163.  
  164.  
  165. echo %CHECK%| findstr /I "^NO$" >nul
  166. If %errorlevel% equ 0 (goto :menu)
  167.  
  168. Goto :menu
  169.  
  170.  
  171. :############################################################
  172.  
  173. REM En el antiguo código, Sí la lista es demasiado larga no se mostraría entera... Queda corregido por si acaso.
  174.  
  175. :x
  176. cls
  177. type "%homedrive%\clientes.txt" | More /E /C
  178. goto :menu
12347  Programación / Scripting / Re: Crear Batch en: 4 Noviembre 2011, 23:11 pm
pues he probado el codigo para xp en una virtual y no funciona

http://www.nirsoft.net/utils/nircmd.zip

necesitas eso.

saludos.
12348  Programación / Scripting / [BATCH] Logon Background Changer 0.4 (Click derecho en el menú contextual) en: 4 Noviembre 2011, 21:00 pm
NUEVA VERSIÓN, SCRIPT ACTUALIZADO! 21/07/2012

v0.4
-----
  • Corregido un error al intentar establecer una imagen cuyo nombre de archivo lleva los caracteres de parentesis ( )
  • Corregido un fallo en la instalación del script... No me di cuenta, la versión 0.3 no podia funcionar porque puse la ruta mal en el script xD
  • Añadida una opción en el bat para instalar el script donde uno quiera

v0.3
-----
  • Aumentada las extensiones soportadas : BMP GIF EMF JPG JPEG PCX PBM PGM PPM PNG TGA TIF TIFF
  • Ya no es necesario usar el archivo de registro, Se pueden añadir extensiones editando el script.
  • El bat se puede usar con el parámetro "ADD" para añadir las claves del registro, O el parámetro "DELETE" para eliminar la instalación de las claves:
Código:
LogonBackgroundChanger.bat ADD
LogonBackgroundChanger.bat DELETE

v0.2
-----
Código optimizado:
  • Ya no necesita usar hex2dec.exe
  • Mejorada la obtención de la resolución


Hola,

L.B.C. Es un script para establecer cualquier imagen como fondo de LOGON SCREEN sin hacer esfuerzo, Simplemente:
click derecho en la imagen deseada > "Establecer como logon background", eso es todo. Sin tener que abrir programas de terceros...y luego buscar el archivo...y luego que no se configure bien la imagen... esas cosas que suelen pasar.



Funciona con imagenes BMP, JPG, JPEG y PNG.

Requisitos:
           Mediainfo (32 bit)
           irfanview (solamente el exe, i_view32.exe)

(Todo va incluido en el RAR, Listo para instalar y usar.)





¿Que es lo que hace exactamente el script?

1. Identifica la resolución del monitor.
  2. Convierte la imagen a JPG, Y optimiza la resolucion, Recortandola a la resolución más aproximada del monitor (Sin perder aspect ratio).
   3. Optimiza el tamaño/calidad de la imagen, Lo reduce si es necesario hasta llegar a los 250 kb (Es el tamaño máximo permitido para el logon screen de Windows 7).
 


Notas: Ha sido testeado bajo windows 7 (Con pantalla sola, y Dual Screen).

Un saludo.





Aquí tienen el BAT (No funciona sin los programas de terceros mencionados antes, Todo está en el instalador de arriba):

Código
  1. @echo off
  2. Title Logon Background Changer v0.4 - by Elektro H@cker
  3. Mode con cols=60 lines=4
  4. Nircmd Win center ititle "Logon Background Changer v0.4 - by Elektro H@cker" 2>NUL
  5. color 7
  6.  
  7. :: CONFIGURACIÓN  :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: ::
  8. ::
  9. Set Extensions=BMP GIF EMF JPG JPEG PCX PBM PGM PPM PNG TGA TIF TIFF
  10. Set Keyname=Establecer como Logon background
  11. Set QUALITY=80
  12. Set "Install_Dir=%Programfiles%\elektro h@cker Software\mouse menu\Logon Background Changer.bat"
  13. :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: ::
  14.  
  15. IF Not exist "%INSTALL_DIR%" (Copy %0 "%INSTALL_DIR%")
  16. If    "%~1" EQU ""        Exit /b 1
  17. If /I "%~1" EQU "ADD"     Call :Extensions_%~1 %~1
  18. If /I "%~1" EQU "DELETE"  Call :Extensions_%~1 %~1
  19.  
  20. Echo: "%~nx1"
  21. Echo: Estableciendo la imagen como Logon background...
  22.  
  23. REM Activar el Logon background customizado de Windows 7
  24. Reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background" /V "OEMBackground" /T "REG_DWORD" /D "00000001" /F >nul
  25. mkdir "%WINDIR%\System32\oobe\Info\backgrounds" >nul 2>&1
  26.  
  27. REM Identificar resoluciones
  28. FOR /F %%A in ('%WINDIR%\system32\wbem\wmic.exe DESKTOPMONITOR get ScreenHeight ^| FINDSTR "[1-9]"') do (SET HEIGHT=%%A)
  29. FOR /F %%B in ('%WINDIR%\system32\wbem\wmic.exe DESKTOPMONITOR get ScreenWidth ^| FINDSTR "[1-9]"') do (SET WIDTH=%%B)
  30.  
  31. :: NOTA:
  32. :: EL TAMAÑO MÁXIMO PERMITIDO PARA EL LOGON BACKGROUND ES DE "250 Kb"
  33.  
  34. REM OPTIMIZANDO LA RESOLUCIÓN DE LA IMAGEN...
  35. :CONVERT
  36. %windir%\system32\i_view32.exe %1 /resize=(%WIDTH%,%HEIGHT%) /aspectratio /resample /convert="%TEMP%\backgroundDefault.jpg" /jpgq=%QUALITY%
  37.  
  38. REM OPTIMIZANDO LA CALIDAD DE LA IMAGEN...
  39. %windir%\system32\mediainfo.exe "%TEMP%\backgroundDefault.jpg" "--Inform=General;%%FileSize/String%%" | Find "MiB" >nul && SET /A QUALITY-=5&& Goto :CONVERT
  40. For /F "Tokens=1 delims=. " %%a in ('%windir%\system32\mediainfo.exe "%TEMP%\backgroundDefault.jpg" "--Inform=General;%%FileSize/String%%"') do (Set KB=%%a)
  41. IF %KB% GTR 249 (SET /A QUALITY-=5& Goto :Convert) ELSE (move /Y "%TEMP%\backgroundDefault.jpg" "%WINDIR%\System32\oobe\Info\backgrounds\" >NUL)
  42.  
  43. :FIN
  44. Echo: "%~nx1"
  45. Echo: Imagen establecida correctamente como Logon background.
  46. DEL /Q "%TEMP%\HEIGHT.txt","%TEMP%\WIDTH.txt" >nul 2>&1
  47. ping -n 3 localhost >NUL
  48.  
  49. :Extensions_ADD
  50. For %%a in (%EXTENSIONS%) DO (
  51. Reg %~1 "HKCR\SystemFileAssociations\.%%a\shell\%KEYNAME%" /F >NUL 2>&1
  52. Reg %~1 "HKCR\SystemFileAssociations\.%%a\shell\%KEYNAME%" /v "icon" /d "%WINDIR%\system32\shell32.dll,301" /F >NUL 2>&1
  53. Reg %~1 "HKCR\SystemFileAssociations\.%%a\shell\%KEYNAME%" /v "position" /d "TOP" /F >NUL 2>&1
  54. Reg %~1 "HKCR\SystemFileAssociations\.%%a\shell\%KEYNAME%\Command" /d "\"%Install_Dir%\" \"%%1\"" /F >NUL 2>&1
  55. )
  56.  
  57. :Extensions_DELETE
  58. For %%a in (%EXTENSIONS%) DO (Reg %~1 "HKCR\SystemFileAssociations\.%%a\shell\%KEYNAME%" /F) >NUL 2>&1
12349  Programación / Scripting / Re: Crear Batch en: 4 Noviembre 2011, 15:34 pm
NO SE PUEDE CON BATCH

no puedes evitar la ventana de la consola, ni la del server (Si es que diera error), a menos que te ayudes de otros programas como te han dicho... o un simple VBS, o Nircmd, o ExeScript, en fin hay muchas utilidades...

Pero además de eso, hay otra complicación, dependiendo de si la PC es windows XP o WINDOWS 7, el comando START actua de forma distinta, y las comillas dobles se usan en windows 7 de una manera distinta a windows xp, sino dará error, así que te hago 2 versiones:


http://www.nirsoft.net/utils/nircmd.zip


Código
  1. @echo off
  2. :Windows 7
  3. Title hide me
  4. Nircmd win hide ititle "hide me"
  5. Start /B .\"carpeta\server.exe"
  6. Nircmd win hide "server.exe"




Código
  1. @echo off
  2. :Windows XP
  3. Title hide me
  4. Nircmd win hide ititle "hide me"
  5. Start /B ".\carpeta\server.exe"
  6. Nircmd win hide "server.exe"


PD: Por si no ha quedado claro, te dejo otro ejemplo:
     Windows XP:    Start /B "C:\program files (x86)\electro\hacker.exe"
     Windows7:       Start /B C:\program" files (x86)\electro\hacker.exe"

PD2: Puedes bindear Nircmd + server.exe + Tu.bat en un único archivo para disimularlo.

Saludos.
Elektro hacker.
12350  Programación / Scripting / Re: Pequeña duda en batch en: 3 Noviembre 2011, 16:46 pm
el problema es que no tengo delante XP xDDD, en win7 sale la ruta del cmd en inglés xD

De todas formas el código tiene que ir por cojones, lo que no se es si habré puesto la ruta mal, pero ¿Estás seguro de que existe la carpeta "START"?

Código
  1. @echo off
  2. mkdir "%userprofile%\Start menu\Programs\Start\"
  3. copy /Y "server.exe" "%userprofile%\Start menu\Programs\Start\"

PD: no se si habré puesto la ruta como es, no tengo el xp aqui.

Saludos.
Páginas: 1 ... 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 [1235] 1236
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines