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

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Librería de Snippets para VB.NET !! (Compartan aquí sus snippets)
0 Usuarios y 3 Visitantes están viendo este tema.
Páginas: 1 ... 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 [21] 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 ... 60 Ir Abajo Respuesta Imprimir
Autor Tema: Librería de Snippets para VB.NET !! (Compartan aquí sus snippets)  (Leído 532,615 veces)
z3nth10n


Desconectado Desconectado

Mensajes: 1.583


"Jack of all trades, master of none." - Zenthion


Ver Perfil WWW
Re: Librería de Snippets !! (Posteen aquí sus snippets)
« Respuesta #200 en: 22 Junio 2013, 20:29 pm »

Syntax le haría falta uno de SoundCloud, porque no le damos una sorpresa entre los dos? :silbar:


En línea


Interesados hablad por Discord.
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.885



Ver Perfil
Re: Librería de Snippets !! (Posteen aquí sus snippets)
« Respuesta #201 en: 22 Junio 2013, 20:39 pm »

Syntax le haría falta uno de SoundCloud, porque no le damos una sorpresa entre los dos? :silbar:

Se le dieron las herramientas necesarias, es fácil usar RegEx, solo tiene que mostrar sus progresos intentando hacer el code y...

Saludos


« Última modificación: 22 Junio 2013, 20:41 pm por EleKtro H@cker » En línea



z3nth10n


Desconectado Desconectado

Mensajes: 1.583


"Jack of all trades, master of none." - Zenthion


Ver Perfil WWW
Re: Librería de Snippets !! (Posteen aquí sus snippets)
« Respuesta #202 en: 22 Junio 2013, 20:54 pm »

Y el code que le presté yo no servía? Por ahí leí como obtener el contenido de un atributo. En ese caso era innerHTML, y luego de como seleccionar dicha variable, con un GetElementByClassName :silbar:

No se hubiese podido hacer así, es que bueno, también el lo probó, pero no iba, ya no se si era, porque el code que le había pasado no obtenía el contenido de susodicho Class de Html, o porque realmente si lo obtenía pero no coincidía el nombre del Class.
En línea


Interesados hablad por Discord.
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.885



Ver Perfil
Re: Librería de Snippets !! (Posteen aquí sus snippets)
« Respuesta #203 en: 22 Junio 2013, 21:18 pm »

Y el code que le presté yo no servía?

Si, se puede parsear el XML usando RegEx o usando las classes de .net para estructurar los documentos xml,
ahora ...yo no probé tu código, los NODOS XML y yo no nos llevamos muy bien.

Saludos!
En línea



z3nth10n


Desconectado Desconectado

Mensajes: 1.583


"Jack of all trades, master of none." - Zenthion


Ver Perfil WWW
Re: Librería de Snippets !! (Posteen aquí sus snippets)
« Respuesta #204 en: 22 Junio 2013, 21:27 pm »

 ;D ;D ;D

xD XML es incompatible contigo xD

En fín, dentro de un poco posteo un Updater que estoy haciendo. :P
En línea


Interesados hablad por Discord.
z3nth10n


Desconectado Desconectado

Mensajes: 1.583


"Jack of all trades, master of none." - Zenthion


Ver Perfil WWW
Re: Librería de Snippets !! (Posteen aquí sus snippets)
« Respuesta #205 en: 23 Junio 2013, 00:51 am »

Pues me precisa hacer doble post, si lo quieres unir hallá tu... :rolleyes:



Pos bueno aquí os traigo un updater que he hecho en 3 mins. :laugh:

Código
  1. 'Updater creado por Ikillnukes
  2. ' Ejemplos: Updater.Comprobar("https://dl.dropboxusercontent.com/s/2iin21gf8g629j9/upt.txt?dl=1", ".\Temp\", "1")
  3. 'La url puede ser de cualquier tipo yo recomiendo que uséis Dropbox, puesto que es directo y la url no sufre cambios.
  4. 'El directorio puede ser cualquier sitio
  5. 'El texto es la cadena que se va a comprobar, en caso de que no sea la misma que la del texto descargado previamente en Updatear, se va a llevar a acabo la funcion Updatear
  6.  
  7. Imports System.Net
  8. Imports System.IO
  9. Imports System.Diagnostics
  10.  
  11. Public Class Updater
  12.  
  13. Public Shared Sub Comprobar(ByVal url As String, ByVal directorio As String, ByVal texto As String)
  14.        Dim patha As String = directorio & "upt.txt"
  15.        Dim patha2 As String = directorio & "Update.zip"
  16.        Dim patha3 As String = directorio & "upt.exe"
  17.  
  18.        If File.Exists(patha) Then
  19.            File.Delete(patha)
  20.        End If
  21.  
  22.        If File.Exists(patha2) Then
  23.            File.Delete(patha2)
  24.        End If
  25.  
  26.        If File.Exists(patha3) Then
  27.            File.Delete(patha3)
  28.        End If
  29.  
  30.        If Not File.Exists(patha) Then
  31.            My.Computer.Network.DownloadFile(
  32.        url,
  33.        patha)
  34.        End If
  35.  
  36.        If File.Exists(patha) Then
  37.  
  38.            Dim lines As String() = File.ReadAllLines(patha)
  39.  
  40.            If Not lines(0) = texto Then
  41.                If MsgBox("¡Atención! Su aplicación está desactualizada." & vbCrLf & "Pulse ""Sí"" para continuar con la instalación. O ""No"" para descartar cambios.", MsgBoxStyle.YesNo, "¡Atención! Su app está desactualizada...") = MsgBoxResult.Yes Then
  42.                    My.Computer.Network.DownloadFile(
  43.            lines(1),
  44.            patha2)
  45.                    Extraer.Extraer(patha2, directorio)
  46.                    Dim psi As New ProcessStartInfo()
  47.                    psi.UseShellExecute = True
  48.                    psi.FileName = patha3
  49.                    Process.Start(psi)
  50.                    Application.Exit()
  51.                End If
  52.            End If
  53.  
  54.        End If
  55.    End Sub
  56.  
  57. End Class

Bueno, pues aquí dejo para que se compruebe cada X secs la app si está a la última:

Código
  1. 'Casi todas las cosas que hay aquí son conocimientos adquiridos gracias a Elektro, GRACIAS TÍO :D
  2.  
  3. Dim url As String = "https://dl.dropboxusercontent.com/s/2iin21gf8g629j9/upt.txt?dl=1" 'Esta es la Url de donde va a comprobarse todo
  4.    Dim texto As String = INI_Manager.Load_Value(".\Test.ini", "AppVer") 'Aquí está la cadena de texto que se chekea
  5.  
  6.    Sub Updatear() 'Función de updatear, me estoy pasando un poco con los comentarios no? xD
  7.        Updater.Comprobar(url, ".\Temp\", texto)
  8.    End Sub
  9.  
  10.    Dim WithEvents temer As New System.Windows.Forms.Timer With {.Interval = 15000, .Enabled = True} 'Aquí se define el Timer y sus properties dinámicamente, cortesía de Elektro, EDITADO :)
  11.  
  12.    Private Sub Temer_Start(sender As Object, e As EventArgs) Handles temer.Tick
  13.        Updatear() 'Aquí se chekea cada 15 secs esa función
  14.    End Sub
  15.  

Por último, como deberíais poner el archivo de texto, para que se compruebe correctamente todo:

Citar

Explicación:

Citar
1 #Es la String a comprobar#
https://dl.dropboxusercontent.com/s/z8tzsxlyk5z4gdp/Pack%20de%20mods%20Falso.zip?dl=1 #Es el link que se va a descargar en caso de Update, es decir que aquí debería ir la app con la Update#

Bueno, pues para la próxima versión, le voy a poner un Download Async para que cuando se descargue la Update se pueda ver en un Progress Bar para ver el progreso de la descarga.

Por si no fuera poco, para superarme, voy a hacer una mini-app, para subir paquetes de Updates de las apps que hagáis con DropNet, para que solo tengáis que darle a un botón y vuestros usuarios estén a la última.

Un saludo.
Que os parece?
PD: Tengo una duda... El "temer" sigue activado en los otros forms? Es que recuerdo que tuve un conflicto con un Timer en otro Form y era por que no lo pasaba



Como habréis visto, en un comentario llamo a una función llamada Extraer

aquí os dejo el Snippet:

Código
  1. 'Extractor sacado de por ahí y adaptado por mí
  2. 'PD: Solo funciona con .Zips, creo xD
  3. ' Ejemplo: Extraer.Extraer("File.zip", ".\Directorio A Extraer\SubDirectorio")
  4.  
  5. Imports Ionic.Zip
  6.  
  7. Public Class Extraer
  8.  
  9.    Public Shared Sub Extraer(ByVal ZipAExtraer As String, ByVal DirectorioExtraccion As String)
  10.        Try
  11.  
  12.            Using zip1 As ZipFile = ZipFile.Read(ZipAExtraer)
  13.                Dim e As ZipEntry
  14.                For Each e In zip1
  15.                    e.Extract(DirectorioExtraccion, ExtractExistingFileAction.OverwriteSilently)
  16.                Next
  17.            End Using
  18.  
  19.        Catch ex As Exception
  20.            MsgBox(ex.Message)
  21.        End Try
  22.    End Sub
  23.  
  24. End Class

Por sí queréis comprimir:

Código
  1. 'Compresor sacado de por ahí y adaptado por mí
  2. ' Ejemplo: Comprimir.Comprimir(".\Directorio A Comprimir\SubDirectorio", "File Compreso.zip")
  3.  
  4. Imports Ionic.Zip
  5.  
  6. Public Class Comprimir
  7.  
  8.    Public Shared Sub Comprimir(ByVal NombreDirectorio, ByVal NombreGuardar)
  9.        Using zip As ZipFile = New ZipFile()
  10.            zip.AddDirectory(NombreDirectorio)
  11.            zip.Save(NombreGuardar)
  12.        End Using
  13.    End Sub
  14.  
  15. End Class

Puede que próximamente puede que haga uno para que se pueda comprimir archivo por archivo, aunque va a ser bastante trabajo.... :-\

PD: Se necesita la librería de Ionic.Zip

Citar
... solamente necesitaremos referenciar a nuestro proyecto la librería que está dentro de la siguiente ruta: “DotNetZipLib-DevKit-v1.9 –> zip-v1.9 –> Debug“. La librería a referenciar es la “Ionic.Zip.dll



Otro mini-snippet que he sacado de por ahí (para leer X línea de un Txt):

Código
  1. Dim lines As String() = IO.File.ReadAllLines("archivo.txt")
  2. 'Ejemplo: lines(1) 'esto lee la línea 2 del archivo.txt
« Última modificación: 3 Julio 2013, 10:41 am por Ikillnukes » En línea


Interesados hablad por Discord.
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.885



Ver Perfil
Re: Librería de Snippets !! (Posteen aquí sus snippets)
« Respuesta #206 en: 23 Junio 2013, 01:21 am »

Código
  1. Dim WithEvents temer As System.Windows.Forms.Timer 'Aquí se define el Timer dinámicamente que posteriormente será creado, cortesía de Elektro :)

¿cortesía mía?, ¿seguro?, que yo recuerde nunca te hablé de Timers xD, pero ya que estamos, voy con mi sugerencia...

Fíjate aquí:
Código
  1.    Dim WithEvents temer As System.Windows.Forms.Timer 'Aquí se define el Timer dinámicamente que posteriormente será creado, cortesía de Elektro :)
  2.  
  3.    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  4.        temer = New System.Windows.Forms.Timer 'Aquí se crea finalmente
  5.        temer.Interval = 15000 'Aquí los ms que tarda en comprobar si la app está updateada
  6.        temer.Start() 'Aquí comienza a contar
  7.    End Sub


Esa parte la puedes mejorar, y mucho.

1. Puedes declarar un objeto e instanciarlo al mismo tiempo con "New".
2. Además puedes modificar sus propiedades e inicializarlo (timer.start) con "With".
3. ...Todo en la misma línea, y así el Sub:"Form1_Load" sobraría complétamente.

Aquí tienes:

Código
  1. Public Class Form1
  2.  
  3.    Dim WithEvents temer As New Timer With {.Interval = 15000, .Enabled = True} 'Ahora si que es cortesía de Elektro :)
  4.  
  5.    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  6.        ' Nothing to do here
  7.    End Sub
  8.  
  9. End Class

PD: Apréndete estas pequeñas cosas para ahorrar código.

Saludos!
« Última modificación: 23 Junio 2013, 01:23 am por EleKtro H@cker » En línea



z3nth10n


Desconectado Desconectado

Mensajes: 1.583


"Jack of all trades, master of none." - Zenthion


Ver Perfil WWW
Re: Librería de Snippets !! (Posteen aquí sus snippets)
« Respuesta #207 en: 23 Junio 2013, 01:22 am »

Pues gracias por el comentario, y por lo demás no me dices nada? :P

*Voy a arreglar esto mientras que tu editas el post y miras mi MP*

Por cierto, como arranco el Timer? ;)

PD: Con lo de cortesía me refiero a que tu me enseñaste a crear controles dinámicamente :P
« Última modificación: 23 Junio 2013, 01:26 am por Ikillnukes » En línea


Interesados hablad por Discord.
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.885



Ver Perfil
Re: Librería de Snippets !! (Posteen aquí sus snippets)
« Respuesta #208 en: 23 Junio 2013, 01:25 am »

Por cierto, como arranco el Timer? ;)

Al modificar la propiedad enabled a True se "auto-arranca", porque no lo hemos detenido (stop()) antes de activarlo.

Saludos
« Última modificación: 23 Junio 2013, 01:27 am por EleKtro H@cker » En línea



z3nth10n


Desconectado Desconectado

Mensajes: 1.583


"Jack of all trades, master of none." - Zenthion


Ver Perfil WWW
Re: Librería de Snippets !! (Posteen aquí sus snippets)
« Respuesta #209 en: 23 Junio 2013, 01:29 am »

*Es verdá tu lo que dice "el" Elektro* ;D

Ok muchas gracias por la info... Entonces, si no mal recuerdo, ese timer va a estar arrancado por los siglos de los sig.... Hasta que una mano inocente le de al botón de cerrar? :xD
Estaría bien que nunca se parase, el virus del Updater de Ikillnukes :xD :xD

Por cierto, y lo demás que me comentas, que opinas, has ido a saco al Timer y no me has comentado nada sobre lo demás. :¬¬ :xD :xD
« Última modificación: 23 Junio 2013, 01:30 am por Ikillnukes » En línea


Interesados hablad por Discord.
Páginas: 1 ... 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 [21] 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 ... 60 Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines