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

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


  Mostrar Temas
Páginas: 1 ... 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 [20] 21
191  Programación / Scripting / Generar diccionario (vbs) en: 13 Noviembre 2008, 14:22 pm
Buenas....

Dejo un pequeño script para generar diccionarios de palabras (creado en un rato de ocio), es decir que, en base a un grupo de caracteres y una longitud seleccionada por el usuario, genera un listado de palabras con todas las posibles combinaciones de los caracteres.
Se puede portar facilmente a otros lenguajes como ser perl, python, VB (casi sin cambios), C/C++, etc

La idea de este es que sirva como ejemplo para aquellos que inician con vbs, el code no es para nada difícil, solamente necesita ser leído detenidamente  :P

Algunas de las funciones utilizadas que pueden resultar desconocidas son:
Lbound: Indica el número de índice más pequeño en un array
Ubound: Indica el número de índice más grande en un array
Cint: convierte a Integer el valor ingresado
Len: indica el largo de una palabra

Código
Código
  1. Set objfso = createobject("scripting.filesystemobject")
  2. Set ToFile = objfso.createtextfile("Dik.txt",True)
  3.  
  4. DicLis = Array("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z")
  5. Length = Cint(inputbox("Ingrese el numero de caracteres de las palabras","Dictionary",""))
  6.  
  7. DicU = Lbound(DicLis)
  8. DicL = Ubound(DicLis)
  9.  
  10. Complete("")
  11.  
  12. Function Complete(strin)
  13.  
  14. For z = DicU to DicL
  15. word = strin & DicLis(z)
  16.  
  17. If Len(word) = Length then
  18. ToFile.writeline word
  19. Else
  20. Complete(word)
  21. End If
  22.  
  23. Next
  24.  
  25. End Function
  26.  
  27. ToFile.close
  28. Msgbox "Proceso Terminado"

Ejemplo:
Longitud: 4 caracteres
Tiempo: 8 segundos
Total de palabras: 456977
P IV 3.0, 1gb de ram

Para agregar más letras, números o símbolos, simplemente hay que modificar el array DicLis

Hay que tener cuidado al probarlo, se debería de elegir un número más bien pequeño como ser 3 o 4, ya que probando con el actual "diccionario" y con palabras de longitud 6, el archivo generado ocupaba 400 mb, son unas 309 millones de palabras y puede tardar bastante (tuve que recurrir a taskkill XD)

El script en si utiliza recursividad para hacer todo el trabajo, de ahí es que ocupe solamente algunas líneas  ;)

Eso es todo, saludos  ;)

P.D: si no lo terminas de entender, ya sabes donde mirar XD
192  Programación / Scripting / TUTORIAL vbscript en: 24 Septiembre 2008, 20:30 pm
Tutorial de vbscript by Novlucker

Temas
  • Introducción - pdf click
  • Operadores
  • Esctructuras de control
    • If
    • Case
    • For
    • While
    • Do
  • Manejo de objetos
    • Filesystemobject(FSO) - pdf click
    • wshShell
    • wshNetwork - pdf click
    • Dictionary - pdf click
    • Commondialog - pdf click

Se irán añadiendo nuevos objectos para descarga en pdf

Bueno, primero aclarar que este tutorial, pretende explicar de manera básica las distintas instrucciones aplicadas en visual basic script (vbs de aquí en más), para que así de este modo, todos aquellos interesados en este lenguaje de scripting, tengan la posibilidad de comenzar a desarrollar sus pequeños scripts.

Introducción:

Para empezar debemos decir que los vbs, tal y como lo dice su nombre, son "simples" scripts que se ejecutan por medio de un intérprete en el sistema, con lo que bastará con crear el código en un simple bloc de notas (o similar) y guardarlo con extensión *.vbs, sin necesidad de realizar ninguna compilación (aunque existe la posibilidad).

En este caso el intérprete  es, el Windows Script Host de Microsoft, por lo que estará presente (aunque en distintas versiones) de manera predeterminada desde Win 98 en adelante, así que  podremos hacer uso de estos archivos en prácticamente, todos los Windows.

Se puede decir que los vbs son una mejora con respecto a los bat, ya que estos permiten una mayor interacción con el sistema operativo, y decir además que este lenguaje, es un derivado de Visual Basic, por lo que desde un principio y aunque de manera mucho más limitada, se podrá familiarizar con dicho leguaje (la sintaxis es similar en todos los aspectos).

A tener en cuenta antes de comenzar:

•   En vbs no importan las mayúsculas o minúsculas
VBscript = vbscript
•   Para indicar un final de línea, no se debe de hacer más que pasar a la siguiente (no es necesario terminar con por ejemplo " ; " como en javascript)
•   Los comentarios, van precedidos de una " ‘ " (comilla simple)
   ‘ Esto es un comentario
•   No es obligatorio declarar las variables, aunque es conveniente hacerlo para dejar más legible el código
   Se pueden declarar utilizando Dim, o bien, se les da valor directamente.
   Dim nuestravariable
   También puede ser utilizado Option explicit para así "obligarse" a declarar las variables (en los pequeños ejemplos lo haré así)

En la mayoría de los ejemplos utilizaré la función msgbox, la cual se encarga de mostrar un mensaje en pantalla.
 
Tipos de dato:

Existen varios tipos de datos que pueden manejarse en vbs, y los que más vamos a utilizar, son ;
Booleano, Byte, Fecha, Double, Entero, Entero largo, Objeto, Single, Cadena.
Todos estos representan valores verdadero/falso, fecha/hora, númerosentero positivo/negativo, cadena de texto (no creo necesite más explicación que esta).

Operadores:

Tendremos varios tipos de operadores a nuestra disposición.

1.   Aritméticos:  Suma(+), Resta(-), Multiplicación(*), División decimal(/), División entero(\), Potencia(^), Resto división(mod)
2.   Comparación: Igual(=), Distinto(<>), Mayor(>), Menor(<), Menos o igual(<=), Mayor o igual(>=)
3.   Lógicos: Y(and), O(or), Xor, No(not)
4.   De cadena: Concatenación(&)

Estos han sido a grandes rasgos, los operadores a utilizar en vbs, por lo que después, y haciendo uso de nuestro próximo tema (estructuras de control), se mostrarán algunos ejemplos.

Estructuras de control:

1.   IF (condicional)
Esta se utiliza para evaluar 2 o más posibles resultados, en virtud del cual, se tomarán diferentes acciones.
   
Citar
Dim valor
Valor = 8
If  valor < 10 then
   Msgbox "El valor es MENOR a diez "
Else
   Msgbox "El valor es MAYOR a diez "
End if

Como se ve en este ejemplo se comienza declarando la variable "valor", luego de esto, se le asigna el valor 8, y posterior a esto, se evalúa dicho valor (haciendo uso de los operadores de comparación vistos anteriormente), por lo que si el valor es menor a 10, se mostrará un mensaje en pantalla indicando que es MENOR, de lo contrario, el mensaje indicará MAYOR (en este caso le habíamos asignado el valor 8, por lo que será menor).
 

2.   Case (condicional)
En el caso del IF, si bien no se ha mostrado, existe la posibilidad de anidar dos o más, para así realizar varias evaluaciones, pero el caso es que cuando se realizan muchas, el código puede volverse algo engorroso. Es en estos casos, donde recurrimos al select case.

Citar
Dim numero
numero = 8
Select case numero
   case 6
      msgbox "El valor es seis "
   case 7
      msgbox "El valor es siete "
   case 8
      msgbox "El valor es ocho "
End select

Al igual que en el anterior, en este ejemplo, se comienza definiendo la variable "numero", y se le asigna 8 como valor. Luego con select case se indica que es lo que se va a revisar, en este caso, cuanto es el valor de "numero", luego, se indican las opciones con un case por cada una de ellas, en este caso, "case 6", en el caso de que el valor sea 6, "case 7", y "case 8", para el caso de que el valor sea 7 y 8 respectivamente (como sabemos es 8), es decir, "si es 6", mensaje "El valor es seis", "si es 7", mensaje "El valor es siete", y "si es 8", mensaje "El valor es ocho".

3.   FOR (bucle)
El for es utilizado cuando queremos repetir una determinada acción un cierto número de veces.

Citar
Dim i
For i=1 to 5 step 1
   Msgbox "El valor de i es: " & i
Next

Comenzamos definiendo la variable "i", luego de esto, inicializamos el bucle for, es decir, decimos que; desde "i" igual 1, a "i" igual 5, incrementando de a
1, mostraremos un mensaje con la frase "El valor de i es: " y luego de esto, el valor real de "i", por lo que en cada "paso" que de nuestro bucle, mostrará algo más o menos así…



Como ven, 5 mensajes "casi" iguales, ya que la secuencia se repite 5 veces, y lo único que cambia es el valor de "i" (la hemos concatenado al mensaje con el carácter &), ya que va tomando distintos valores en cada uno de los "pasos".

4.   FOR EACH(bucle)
El for each, tiene la particularidad de que es un for que recorre todos los elementos de una colección o vector. Antes de continuar, intentaré explicar lo que es un "array", ya que será lo que utilicemos en el ejemplo.
Un array o matriz, es una estructura de datos en forma de variable, que permite almacenar más de un único valor, dentro de una única variable. Para acceder a cada uno de estos valores, será necesario hacer uso de índices.

Citar
Dim nombres(2)
nombres(0)= "Martín"
nombres(1)= "Pablo "
nombres(2)= "Carlos "
Msgbox nombres(1)

En este ejemplo, se define la variable "nombres" que tendrá espacio para 3 valores (tener en cuenta que comienza por 0, por eso que se ponga 2), y luego, se definen cada uno de los valores de "nombres". Por último utilizamos un mensaje, para mostrar el valor del índice 1 del array, con el siguiente resultado…



Como se ve, el mensaje muestra el nombre "Pablo" porque al llamar al array, hemos puesto el índice 1, y como se ve cuando lo declaramos, le habíamos asignado valor "Pablo", en el caso de indicar 2 en lugar del 1, el mensaje mostraría "Carlos".
Espero esto haya quedado lo suficientemente claro.
Ahora, volviendo al For each (espero ya no te hayas olvidado), este podría ser utilizado en el caso del array (hay otros casos).

Citar
Dim nombres
Dim n
nombres = array("Martín","Pablo","Carlos")
For each n in nombres
   Msgbox n
next

A pesar de que no lo parezca, es muy similar al anterior, y algunos estarán diciendo, "que tenía que ver el array con esto", pero si se fijan, solamente he mostrado, una segunda manera de declarar el array.
En este caso, en lugar de ir metiendo cada uno de los valores con sus respectivos índices, declaro el array en una sola línea y va quedando organizado según el orden en el que meta los valores, por eso, "Martín" quedará en el lugar 0, "Pablo" en el lugar 1, y "Carlos", en el lugar 2, al igual que en el caso anterior. Esto con respecto al array, ahora a lo que íbamos, el for each.
En líneas siguientes comenzamos con el for, y decimos, por cada "n" (la letra, en este caso "n" la elegimos nosotros) en "nombres" (es un array que contiene tres

nombres), mensaje con el "n", o lo que es igual, por cada nombre, en el "contenedor" "nombres", mensaje con el nombre, y el resultado es el siguiente…



Tanto en for simple, como en el for each, podemos hacer uso de exit for, para parar la ejecución del for completa. Para decirlo de otra manera, con esto escapamos al for.
WHILE (bucle)
El bucle while, es utilizado cuando queremos que una determinada acción se repita mientras una determinada condición de cumpla.

Citar
Dim numero
Numero = 1
While numero <= 10
   Msgbox numero
   numero = numero + 1
Wend

Comenzamos el  ejemplo declarando la variable numero, y le asignamos valor 10, luego ejecutamos  bucle, mientras el valor de "numero" sea menor o igual a 10,
mostramos mensaje con el valor de numero, y además le sumamos 1 al propio valor de numero (de este modo lo utilizamos a modo de contador), luego de 10 veces de mostrar mensaje, el valor de "numero" será igual a 11 y al verificarse la condición esta no se cumplirá, por lo que terminará.

5.   DO (bucle)
El bucle do tiene varias opciones, pero básicamente hará algo, "mientras", o "hasta que" ocurra algo.

Citar
Do
   Msgbox "Esto es un mensaje"
Loop

Este bucle, se repetirá al infinito, por lo que mostrará un mensaje, interminables veces.
Ahora bien, este do, puede ser modificado, para tener algo más de control sobre él, y es justamente haciendo uso de esas condiciones que comentaba antes, "mientras", o "hasta que"

Citar
Dim a = 1
Do until a=10
   Msgbox "Esto es un mensaje"
Loop

Este código se resume en; mensaje de "Esto es un mensaje" hasta que "a" sea igual a 10.
En lugar de until podría utilizarse while, para cambiar la condición a mensaje de "Esto es un mensaje" mientras "a" sea distinta de 10.

Citar
Dim a = 1
Do while a<>10
   Msgbox "Esto es un mensaje"
Loop

Y también puede utilizarse  until y while, antes o después de ejecutarse el bucle

Citar
Do until/while condición (es distinta según sea until o while)
   Msgbox "Esto es un mensaje"
Loop until/while

Como se ve, este bucle nos permite darle varios usos según nos convenga, por lo que termina siendo muy versátil y útil.
Al igual que para los for, en el caso de querer salir de un bucle do, también contamos con una función de escape, en este caso, exit do






Así termina está pequeña introducción a las rutinas básicas de visual basic script, la idea es seguir extendiendo este "tuto", como comentario agrego además, que este lenguaje posee muchisimas funciones, las cuales no detallaré, ya que sería interminable, además de que me centraré más adelante, en explicar funciones expecificas de objetos.

En el caso de querer más documentación al respecto, se pueden descargar la documentación sobre windows script host, donde tendrán la referencia a todas las funciones de las que podemos hacer uso. Windows Script 5.6 Documentation
193  Foros Generales / Sugerencias y dudas sobre el Foro / TITULO en los POST en: 18 Septiembre 2008, 15:01 pm
Buenas....

Bueno.. este post es para sugerir que se sea un poco más ESTRICTOS con los asuntos/títulos de los post, porque si bien está en las normas...

Citar
I.A.1.a. Formato.: El título de los mensajes debe ser descriptivo con acuerdo al contenido. No son descriptivos asuntos que sólo piden ayuda o hacen referencia a la temática general del tablón en los que son escritos.

Abundan por ahí los mensajes con títulos como AYUDA POR FAVOR, NECESITO... (con los puntos suspensivos), TENGO UN PROBLEMA, DUDA, etc, etc.

Eso es todo, es una norma ya impuesta, o debería de decir, propuesta, pero que no se tiene muy en cuenta  :-\

Saludos
194  Foros Generales / Sugerencias y dudas sobre el Foro / Ingreso al foro en: 26 Agosto 2008, 07:24 am
Buenas....

No es realmente un problema, pero ...  es a proposito que al ingresar al foro (luego de user y pass) te direcciona a
Código:
http://foro.elhacker.net/.xml.html;sa=news;board=34;limit=10;type=rss
con las noticias del foro???

Es que eso me ocurre desde hace algunos días, .. y no solo en esta pc... así que imagino no es algo de mi configuración...  :-\

Saludos
195  Programación / Scripting / Zippear archivos en vbs/batch/js en: 4 Agosto 2008, 03:30 am
Buenas a todos...

A quienes les gusta el scripting en batch, seguro se han preguntado alguna vez, como zippear un archivo desde el propio lenguaje, y la solución, ha sido siempre, buscar las carpetas de winzip o winrar en el sistema, para utilizar las aplicaciones de línea de comando que estos programas incluyen, lo que permitía comprimir un archivo, pero siempre dependiendo de un programa ajeno  :-\
El caso es que Win XP trae incorporado por defecto esta posibilidad ("enviar a carpeta comprimida en zip"), pero desde scripting no parecía posible acceder a ella  :(
El caso es que... en vbscript si se puede  :D, y es casi el mismo método que se utiliza en VB, por lo que sería posible zippear un archivo, utilizando scripting, y sin depender de ningún otro soft  ;D
El método lo encontre googleando mucho, y haciendo una que otra prueba, he simplificado el código, y lo he comentado para que sea entendible ,y como verán... es realmente corto.. y he aqui... el code....  :P

Código
  1. set objfso = createobject("scripting.filesystemobject")
  2. 'creamos el objeto que se encarga de manejar archivos
  3.  
  4. set nzip = objfso.opentextfile("c:\nzip.zip",2,true)
  5. 'creamos el archivo zip, en este caso nzip.zip en el directorio C:
  6. nzip.write "PK" & chr(5) & chr(6) & string(18,chr(0))
  7. nzip.close
  8. 'escribimos el encabezado del archivo, que hace que se reconozcan como zip
  9.  
  10. set objsap = createobject("shell.application")
  11. 'creamos un nuevo objeto
  12.  
  13. objsap.namespace("c:\nzip.zip").copyhere wscript.scriptfullname
  14. 'dentro de nuestro zip, copiamos el archivo, en este caso, el propio script
  15. wscript.sleep 2000
  16. 'agregamos una pequeña espera para que de tiempo a copiarse el archivo en el zip
  17.  
Como se ve, el code es muy simple ,pero totalmente efectivo... en el caso de no poder escribir en C:, cambien c:\nzip.zip por una ruta válida para poder probarlo....

Se que aquí la mayoría opta por batch, así que sería cuestión de crear el vbs por medio de echo, y cambiando wscript.scriptfullname por %0, así se comprimiría el *.bat  ;)

Eso fue todo... espero les sirva, creo que si porque más de una vez he leído a usuarios preguntado como comprimir archivos desde un script, y la respuesta siempre ha sido la misma... "buscar el directorio de winzip/winrar......."

Saludos  ;D
196  Programación / Scripting / Descargar mp3's desde Goear [vbscript] en: 29 Julio 2008, 03:53 am
Un nuevo script en vbs

Este, para descargar mp3 desde Goear, al igual que para youtube, basta con modificar un poco la url, para obtener el archivo en cuestión  :P

En realidad estos archivos, luego de ser escuchados quedan guardados en los temporales, pero quizás alguien quiera bajarlos para luego escucharlos  :rolleyes:

El método, también es muy parecido al que he utilizado anteriormente para bajar los videos de youtube, y si bien, por el momento lo único que hace es hacer saltar la ventana de descarga de archivos, podría combinarse por ejemplo con wget para asi bajar los archivos a la pc, he incluso dejar una lista de archivos descargandose..... además comentar, que este mismo método lo he utilizado en otro script, para bajar archivos desde rapidshare (reconociendo el tiempo de espera), así que las posibilidades son muchas  ;D

El code de este.....

Código
  1. 'by Novlucker
  2. Song = inputbox("Ingrese la dirección del tema a descargar..."& chr(13) & "Ejemplo: http://www.goear.com/listen.php?v=a2840d6","Goear Downloader")
  3. Equal = instr(Song,"=")
  4. UrLXml = mid(Song,Equal+1,len(Song)-Equal)
  5. 'Obtenemos el identificador del tema
  6.  
  7. change = "http://www.goear.com/files/xmlfiles/"
  8. UrLXml = change & left(UrLXml,1) & "/secm" & UrLXml & ".xml"
  9. 'Generamos la url modificada
  10.  
  11. set objxml = CreateObject("Microsoft.XMLHTTP")
  12. objxml.Open "GET",UrLXml,0
  13. objxml.Send()
  14.  
  15. xmlcontent = objxml.responsetext
  16. 'Obtenemos el texto del xml
  17.  
  18. fpath = instr(xmlcontent,"http://")
  19. lpath = instr(fpath,xmlcontent,"""")
  20. 'Buscamos dentro del xml la posicion de algunos caracteres
  21.  
  22. mp3path = mid(xmlcontent,fpath,lpath-fpath)
  23. 'Extraemos la direccion del tema
  24.  
  25. set objbrowser = createobject("internetexplorer.application")
  26. objbrowser.navigate mp3path
  27. 'Navegamos hasta la direccion
  28.  
  29. On error resume next
  30.  
  31. Do While objbrowser.Busy
  32. WScript.Sleep 200
  33. Loop
  34.  
  35. objbrowser.quit
  36. 'Salta la ventana de descarga y terminamos el objeto del iexplorer

La idea de este script vino a raíz de una consulta de Martín Fierro en la que consultaba por este tema, justamente porque también intentaba crear un downloader para estos archivos, pero en vb.net, así que gracias a él además, por la idea, y por proporcionarme la info sobre que cambios había que hacerle a la url

Eso fue todo, un ejemplo más de *.vbs  ;)

Saludos

30/04/09: Edito código fuente para contemplar cambios en URL
197  Programación / Scripting / Verificar link's Rapidshare,Megaupload, y otros en vbs en: 28 Julio 2008, 19:11 pm
Buenas a todos...

En este caso, escribo para pedir su colaboración  :P, si son de descargar archivos frecuentemente de internet, a más de uno le habrá pasado conseguir un archivo o imagen iso de 15, 20 o más link's.
Esto, si bien es molesto, no hay más remedio que soportarlo.... pero cual es el problema? cuando bajamos 20 archivos, y el 21 de 22, esta caído!!!  >:(.
El caso es que he encontrado algunas web's donde se verifica la disponibilidad de estos archivos, pero igualmente hay veces en las que están fuera de servicio y demás, lo que impide verificar nada....

Por lo que .. me he creado un script *.vbs para poder verificar por mi mismo  ::), y no depender de ningún servidor ajeno  ;D, la cuestión, es que necesito de su colaboración para verificar el correcto funcionamiento de este script, por lo que le pido a todos aquellos que puedan probarlo, que lo hagan y me digan que tal les ha ido  :P

Para poder utilizarlo correctamente, deben de tener permisos de escritura en el disco C:, o bien, cambiar las rutas C:\origen.txt y C:\destino.txt que están en las primeras líneas del archivo, por rutas con las que no tengan problemas  :rolleyes:.

Además, el archivo origen.txt, es justamente un archivo de texto plano, contiendo los link's del siguiente modo (no pueden haber líneas en blanco)

Código:
http://www.megaupload.com/?d=SUQU3VME
http://www.gigasize.com/get.php?d=ynybwf3gq0b
http://rapidshare.com/files/130649903/Hard_Drive_Inspector_Pro_2.98_Build_475_2b.rar

Permite mezclar distintos servidores como está en el anterior ejemplo

Luego de ejecutarlo, y al cabo de unos segundos, debe de saltar un mensaje, informando de la cantidad de link's activos, y no activos, y también debe de haberse creado el archivo destino.txt, en donde habrá un listado con el resultado de cada link

El código del vbscript es este....

Código
  1. set objfso = createobject("scripting.filesystemobject")
  2.  
  3. listd = replace(wscript.scriptfullname,wscript.scriptname,"")
  4.  
  5. if objfso.fileexists(listd & "\links.txt") then
  6.  
  7. set origen = objfso.opentextfile(listd & "\links.txt",1)
  8. set destino = objfso.createtextfile(listd & "\checked.txt",true)
  9.  
  10. mensaje = createobject("wscript.shell").popup("Comenzará la verificación de los link's...",2,"vbs Link's Checker",64)
  11.  
  12. activos = 0
  13. inactivos = 0
  14.  
  15. do until origen.atendofstream
  16.  
  17. urlfile = origen.readline
  18. servers = array("rapidshare","filefactory","megaupload","mediafire","gigasize","zshare","badongo","depositfiles","filefront","sendspace")
  19. search = array("dl.start","basiclink","captchafrm","download_link","btnlogin","id=""download""","fileboxdlink","gateway_form","downloadarea","spn_download_link")
  20.  
  21. urlserver = replace(replace(urlfile,"http://",""),"www.","")
  22. point = instr(urlserver,".")
  23.  
  24. if point > 0 then
  25. urlserver = replace(urlserver,mid(urlserver,point,len(urlserver)-point+1),"")
  26. end if
  27.  
  28. i=0
  29.  
  30. for each s in servers
  31. if s = urlserver then
  32. exit for
  33. else
  34. i = i + 1
  35. end if
  36. next
  37.  
  38. if i < 10 then
  39.  
  40. Set objxmlHTTP = CreateObject("Microsoft.XMLHTTP")
  41. objxmlHTTP.open "GET", urlfile, 0
  42. objxmlHTTP.send()
  43.  
  44. if instr(lcase(objxmlHTTP.responsetext),search(i)) > 0 then
  45. destino.writeline urlfile & " - ACTIVO"
  46. activos = activos + 1
  47. else
  48. destino.writeline urlfile & " - INACTIVO"
  49. inactivos = inactivos + 1
  50. end if
  51.  
  52. end if
  53.  
  54. loop
  55.  
  56. origen.close
  57. destino.close
  58.  
  59. mensaje = createobject("wscript.shell").popup("Proceso terminado:" & chr(13) & "Activos: " & activos & chr(13) & "InActivos: " & inactivos,10,"vbs Link's Checker",64)
  60.  
  61. else
  62.  
  63. mensaje = createobject("wscript.shell").popup("No se ha podido localizar el archivo ""links.txt""" & chr(13) & "Verifique su existencia por favor...",10,"vbs Link's Checker",48)
  64.  
  65. end if

Bueno, en definitiva, eso....

Decir además, que como se puede llegar a ver en el código, tiene soporte para los servidores de rapidshare.com, rapidshare.de ,filefactory ,megaupload ,mediafire ,gigasize ,zshare ,badongo ,depositfiles ,filefront ,sendspace, pero se le podrían agregar algunos más, y si está todo ok, comento el code  ;)
Desde ya, muchas gracias a aquellos que hagan la prueba con el script... y saludos a todos  ;D

[Modifico:] He solucionado los problemas que me ha comentado carlitos.dll
Nota: El archivo origen.txt se renombró a links.txt y no tiene que estar en C: sino en la misma carpeta que el script
198  Programación / Scripting / Downloader de videos de Youtube en vbs en: 24 Julio 2008, 06:13 am
Hola a todos

Bueno, una vez más, cubriendo un rato de ocio, e intentando aportar algo al foro de scripting, dejo este script *.vbs que automatiza la tarea de bajar videos de youtube.

No hace más que los reemplazos correspondientes en la url del video, para que luego nos salte la ya clasica ventana de descarga.
Recordar que luego hay que cambiarles la extensión a flv

Se bien, se que hay complementos para FF, webs dedicadas a descargar los videos, y muchos más programas, con diversas funciones y extras, el objetivo de este post, es simplemente mostrar una vez más, las posibilidades de vbscript  ;)

Espero les guste  ;D

Código:
UrlVideo = inputbox("Ingrese la dirección del video por favor..."& chr(13) & "Ejemplo: http://es.youtube.com/watch?v=Lfj5loPrU88","vbs Youtube Downloader")

If UrlVideo = "" Then
Wscript.Quit
End If

If instr(UrlVideo,"youtube") = 0 Then
Msgbox "Verifique que la URL ingresada pertenezca a Youtube"
Wscript.Quit
End If

Set ObjXML = Createobject("Microsoft.XMLHTTP")
ObjXML.Open "GET",UrlVideo,0
ObjXML.Send()

If instr(ObjXML.responsetext,"Añadido:") = 0 and instr(ObjXML.responsetext,"Added:") = 0 Then
Msgbox "Ha sido imposible localizar el video" & Chr(13) & "Verifique la dirección por favor..."
Wscript.Quit
End If

TituloF = instr(1,ObjXML.responsetext,"<title>") + 7
TituloL = instr(1,ObjXML.responsetext,"</title>")
titulovideo = Replace(mid(ObjXML.responsetext,TituloF,TituloL-TituloF),"YouTube - ","")

Set ObjShell = Createobject("Wscript.shell")
mensaje = ObjShell.popup("El video "& """" & titulovideo & """" & " ha sido localizado" & chr(13) & chr(13) & "Preparando para descargar...",4,"Video Localizado")

UrlVideo = Replace(UrlVideo,"?v=","/v/")

Set ObjBrowser = Createobject("internetexplorer.application")
ObjBrowser.visible = false
ObjBrowser.navigate UrlVideo
Do While ObjBrowser.Busy
Wscript.Sleep 100
Loop

UrlFinal = Replace(ObjBrowser.locationurl,"swf/l.swf","get_video")
ObjBrowser.navigate UrlFinal
Do While ObjBrowser.Busy
Wscript.Sleep 200
Loop
ObjBrowser.Quit

Como verán, no lo he comentado, pero creo que las funciones utilizadas son claramente identificables  :rolleyes:

Eso fue todo  ;D

Saludos

P.D: Por si alguien no conoce el método, en este post encontré lo de la sustitución de caracteres en la url para bajar videos de youtube
199  Programación / Scripting / [VBS] Enviar mensajes a MSN messenger en: 2 Julio 2008, 01:44 am
Buenas a todos... una vez más, estaba algo aburrido, así que he creado el siguiente script... en algún momento se me había ocurrido hacer un gusano que se propagara por msn, pero luego deje eso atrás y ya no me interesó...

Al ver el mensaje de RockoX me recordé esa idea que había tenido y lo que hubise sido su implementación en *.vbs (hay codes parecidos para vb)

Código
  1. set taskmgr = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery ("select * from Win32_Process")
  2. set objshell = createobject("wscript.shell")
  3.  
  4. for each process in taskmgr
  5. if process.name = "msnmsgr.exe" then
  6. 'Revisamos que el proceso del msn este corriendo
  7. Set objMsn = CreateObject("Messenger.UIAutomation")
  8.  
  9. for each contacto in ObjMsn.mycontacts
  10. 'Por cada contacto en nuestra lista...
  11.  
  12. if contacto.status = 2 and objMsn.mystatus = 2 then
  13. 'Si nuestro estado es online, y el de nuestro contacto tambien...
  14.  
  15. Set iM = objMsn.InstantMessage(contacto.signinname)
  16. objshell.appactivate contacto.friendlyname
  17. objshell.SendKeys "Visita el hacker.net :D{ENTER}"
  18. 'Abrimos una ventana de conversacion y enviamos un mensaje
  19.  
  20. end if
  21. next
  22.  
  23. end if
  24.  
  25. next

Si alguien quiere probarlo, recomiendo quitar el {ENTER}, ya que sino enviarán el mensaje a todos sus contactos online   :P

Para que haga algo, deben de tener el msn abierto, y estar como conectados, así como también deben de estarlo sus contactos, y luego si, ejecutar este script

Bueno, eso fue todo, un pequeño aporte que quizás sirva como ejemplo (de seguro es detectado por varios AV)

Saludos   ;D
200  Foros Generales / Sugerencias y dudas sobre el Foro / Codigos GeShi en: 1 Julio 2008, 03:39 am
Buenas.....

Mi consulta....

No habrá manera de que cuando uno copia un código que se encuentra entre etiquetas GeShi, el resultado sea el mismo que cuando está entre etiquetas de código simple?  :-\ Con esto me refiero a lo siguiente...

Un code como este....

Código
  1. msgbox "hola"
  2. msgbox "hola dos"

Con etiquetas de VB por ejemplo, claramente queda mucho más legible y presentable.... pero a la hora de copiarlo, el resultado es este....

Citar
msgbox "hola"msgbox "hola dos"

Como se ve, el código queda copiado todo de corrido, y hay que estarlo arreglando a mano, esto no es inconveniente cuando son codes cortos, pero en los largos  :-(, en realidad con esto nos evitamos un poco de copy-paste, pero creo que hay veces en la que los usuarios prefieren ni siquiera probar un code de un programa, por el hecho de que antes, deberán de darse a la tarea de arreglarlo completamente

Bueno, con mi duda ya planteada....

Saludos
Páginas: 1 ... 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 [20] 21
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines