------------------------------------Este ya esta Descontinuado------------------------------------
Esta es la nueva version Actualizada...!!!
http://foro.elhacker.net/net/sigo_actualizando_mis_programas_ahora_el_spammer_v20_renovado_servidor_smtp-t265988.0.html (http://foro.elhacker.net/net/sigo_actualizando_mis_programas_ahora_el_spammer_v20_renovado_servidor_smtp-t265988.0.html)
______________________________________________________________________________________
Buenas a Todos los Users de ElHacker.net, Bueno yo soy nuevo aqui en el foro asi que espero me traten bien xD.
Bueno aqui les Dejo un Pequeño Spammer que Cree yo en El VB.NET
"No me hago Responsable del mal Uso de este Programa"
____________________________________________________________________
(http://i86.servimg.com/u/f86/11/66/25/27/logo10.gif)
------------------------------------ACTUALIZADO------------------------------------
La version 1.2 esta Descontinuada ya, ahora hice la Version Blaze, que Tiene soporte para enviar Adjuntos, y Por fin!!! le puse lo de los Threads, y ya no se tilda y manda correos por montones mas Rapido.
Cambios:
Nueva Interface
SIN PROGRESSBARS
No Carga nada
No se Tilda
Soporta Adjuntos
Soporta cualquier Correo electronico.
Bueno espero les Guste esta Nueva Version les dejo unas Pics y el Link para Descargar.
(http://i86.servimg.com/u/f86/11/66/25/27/spamme10.png)
Descargar (http://www.sendspace.com/file/)
------------------------------------ACTUALIZADO------------------------------------
No usa ningun servidor smtp??? :-\
o que metodo utilizas para enviar los mails
parece una buena herramienta
saludos
Tu proyecto esta en Cisual Basic 2008 (.Net) No es asi mmm.
Es interesante el que no use un servidor SMTP... o tal vez si pero es raro...
No soy Muy Avanzado en el Visual Basic asi que no os podre decir con lujo de detalles todo lo que puse eh!!! xDD
Lo del SMTP
Si esta incluido en el Code de la ProgressBar del Form Principal
Dim SMTPServer As New SmtpClient("smtp.gmail.com")
El Puerto que utilizo es el del Gmail que es 587 "SMTPServer.Port = 587"
La ProgressBar Se Activa con un Timer que es Activado por el Button "Flood"
Cualquier duda me preguntan y si quieren les dejo el Source. ;D
Por cierto Soporta cualquier Correo los que estan hay en amarillos era para no poner muchos, pero soporta cualquiera y lo asocia con su servidor SMTP Respectivo.
esta bastante interesante,aun que por mi parte le falta adjuntar archivos,eso ya seria la ostia..
sobre lo del codec no estaria mal para en un futuro estudiarlo.
un salu2
mojolloyo20
No me Habia puesto en Mente eso de Adjuntar archivos en los Spams mmm el Codigo seria Facil Ahora mismo me pongo a echarle coco.
Tengo una duda Descargaron el Programa y lo usaron ya? lo que pasa es que quiero saber si este se compilo correctamente y no marca ningun error, por fa avisenme por aqui. y de Una Me pongo con lo de Los Adjuntos...
See Ya!!! ;D
Yo lo utilizé y me funcionó, sin errores.
Por cierto, quería saber si me podías pasar el código fuente, ya que intenté enviarte un MP y no funcionaban.
Te envié un correo electrónico a la dirección que tienes, así que si puedes te lo agradezco.
Saludos
Le falta un DOEvents() por ahi, para que no se cuelgue la gui
mmm Gracias Jubjub
Cualquier Ayuda sera Tomada en cuenta eh! :)
Voy a hacer un apunte que me extraña que nadie haya hecho ya, no lo hago con mala intención pero se le dice a todo el que hace lo mismo que has hecho tú, no veo por qué no decírtelo a ti:
Esta es la sección de Visual Basic por lo que si quieres compartir aquí tu programa deberías publicar directamente el código fuente y no pedir que te lo soliciten por MP. Si lo que quieres es publicar simplemente un programa compilado existe un foro de software y un un foro libre donde puedes hacerlo.
Si por lo contrario querías compartir dudas, experiencias y demás y no tienes problemas en compartir el source entonces ¿por qué solicitas que te lo pidan por MP?, simplemente cuélgalo junto con tu ejecutable y listo.
Un saludo.
Cita de: Spider-Net en 18 Agosto 2009, 17:38 PM
Voy a hacer un apunte que me extraña que nadie haya hecho ya, no lo hago con mala intención pero se le dice a todo el que hace lo mismo que has hecho tú, no veo por qué no decírtelo a ti:
Esta es la sección de Visual Basic por lo que si quieres compartir aquí tu programa deberías publicar directamente el código fuente y no pedir que te lo soliciten por MP. Si lo que quieres es publicar simplemente un programa compilado existe un foro de software y un un foro libre donde puedes hacerlo.
Si por lo contrario querías compartir dudas, experiencias y demás y no tienes problemas en compartir el source entonces ¿por qué solicitas que te lo pidan por MP?, simplemente cuélgalo junto con tu ejecutable y listo.
Un saludo.
Aun quedan este tipo de usuarios, felicitaciones Spider-Net... ya hiba a poner lo mismo: "y el source"????
Ya pues no mas no se molesten eh Soy nuevo aqui y la verdad es que no lo sabia, Entonces si quieren me pueden pedir el "Proyecto" Por Mp...
Bueno tienen que modificar esta linea para que cuando un user mande algo le llege la info a su E-Mail, el que esta Hay es el mio pero no tiene password, Para que Te pueda funcionar el codigo pon una cuenta que ya no uses en donde dice ("correo.spammer@gmail.com", "your password") Pones un Correo viejo donde quieres que te llegen los datos de la gente que spamees por ejemplo que escribieron y eso, y la clave, para que se comunique con tu correo ps.
Tienes que hacer eso mismo en el Form1 y el Form3
Aca les va el Codigo
FORM1
Imports System.Net.Mail
Public Class Form1
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
'Codigo Para llamar al Formulario2'
Form2.Show()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click, Button4.Click
'Codigo para Detener Ejecucion si el Usuario no Introduce Datos en El TextBox1'
If TextBox1.Text = "" Then
MsgBox("Escribe tu Correo electronico en este formato Para continuar: tunombre@ejemplo.com", MsgBoxStyle.Question)
Return
End If
'Finaliza el Codigo de Detencion de Ejecucion'
'Estos son Los Distintos OBJETOS que Activa y Desactiva este Boton'
Label14.Show()
Label15.Show()
Label16.Show()
AyudaToolStripMenuItem.Enabled = False
Button2.Enabled = False
Button6.Enabled = False
Label8.Enabled = False
Label9.Enabled = False
Label10.Enabled = False
Label11.Enabled = False
Label12.Enabled = False
Button5.Enabled = False
TextBox1.Enabled = False
TextBox2.Enabled = False
TextBox3.Enabled = False
Button3.Enabled = True
Label7.Hide()
Timer1.Start()
Timer2.Start()
Timer3.Start()
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
'Codigo de la "ProgressBar1" incluyendo el codigo SMTP para Hacer la conexión al Correo'
ProgressBar2.Hide()
ProgressBar1.Show()
ProgressBar1.Increment(1)
If ProgressBar1.Value = ProgressBar1.Maximum Then
Dim WC As New System.Net.WebClient
Dim MyMailMessage As New MailMessage
MyMailMessage.From = New MailAddress("correo.spammer@gmail.com")
MyMailMessage.To.Add(TextBox1.Text)
MyMailMessage.Subject = (TextBox2.Text)
WC.Dispose()
MyMailMessage.Body = (TextBox3.Text)
Dim SMTPServer As New SmtpClient("smtp.gmail.com")
SMTPServer.Port = 587
SMTPServer.Credentials = New System.Net.NetworkCredential("correo.spammer@gmail.com", "your password")
SMTPServer.EnableSsl = True
Try
SMTPServer.Send(MyMailMessage)
Catch ex As SmtpException
End Try
End If
End Sub
Private Sub TextBox3_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox3.TextChanged
End Sub
Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
'Timer para Mostrar "Labels" despues de cierto tiempo'
Label6.Show()
Label4.Show()
End Sub
Private Sub Timer3_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer3.Tick
'Timer para Mostrar un "Label" despues de cierto tiempo'
Label5.Show()
End Sub
Private Sub Label5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label5.Click
End Sub
Private Sub Label4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label4.Click
End Sub
Private Sub ProgressBar1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProgressBar1.Click
End Sub
Private Sub ComoUsarToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComoUsarToolStripMenuItem.Click
'Intrucciones de Uso'
MsgBox("Los Textos con * Son requeridos para completar el Formulario,Los Textos con () a los lados significan que estan bloqueados, Introduzca la direccion de Correo electronico de la Victima, Rellene Todos los Campos y luego haga click en Flood para empezar el Proceso, Para Cerrar la ventana solo Presione el Boton Salir. Tambien puedes como opcion dar click en los textos amarillos para seleccionarlos Automaticamente.")
End Sub
Private Sub CreadorToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CreadorToolStripMenuItem.Click
'Creador Brayhan Jose Nuñez Rojas/ En Los Foros - BlazeFire, Youtube BlazexxFire'
MsgBox("Spammer Creado por Brayhan Jose Nuñez Rojas/En los Foros - BlazeFire, Correo electronico: blazefireadm@gmail.com o chichon926@hotmail.com ")
End Sub
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
End Sub
Private Sub MenuStrip1_ItemClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ToolStripItemClickedEventArgs) Handles MenuStrip1.ItemClicked
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
'Boton de "Detener Proceso" Que Activa muestra y Detiene Distintos Objetos seleccionados por el Creador osea Yo xD'
AyudaToolStripMenuItem.Enabled = True
Button2.Enabled = True
Label7.Show()
Timer1.Stop()
Timer2.Stop()
Timer3.Stop()
Button4.Show()
Return
End Sub
Private Sub Label8_Click()
End Sub
Private Sub Label9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label9.Click
'Copiar texto Clickeado a ClipBoard'
Clipboard.SetText("@gmail.com")
MsgBox("Texto Copiado al ClipBoard")
End Sub
Private Sub Label10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label10.Click
'Copiar texto Clickeado a ClipBoard'
Clipboard.SetText("@yahoo.com")
MsgBox("Texto Copiado al ClipBoard")
End Sub
Private Sub Label11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label11.Click
'Copiar texto Clickeado a ClipBoard'
Clipboard.SetText("@msn.com")
MsgBox("Texto Copiado al ClipBoard")
End Sub
Private Sub Label12_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label12.Click
'Copiar texto Clickeado a ClipBoard'
Clipboard.SetText("@live.com")
MsgBox("Texto Copiado al ClipBoard")
End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
'Instruccion para Limpiar Contenido de Cajas de Texto'
TextBox1.Clear()
End Sub
Private Sub flood_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
'Este Button Fue Removido por Motivos que no Explicare, este Codigo ya no es valido lo pueden borrar sin problema alguno de haci quererlo'
TextBox1.Hide()
TextBox1.Enabled = False
Label8.Enabled = False
Label9.Enabled = False
Label10.Enabled = False
Label11.Enabled = False
Label12.Enabled = False
Button5.Enabled = False
TextBox1.Enabled = False
TextBox2.Enabled = False
TextBox3.Enabled = False
Button3.Enabled = True
Label7.Hide()
Timer1.Start()
Timer2.Start()
Timer3.Start()
End Sub
Private Sub Label8_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Label8.TextChanged
End Sub
Private Sub Label8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label8.Click
'Copiar texto Clickeado a ClipBoard'
Clipboard.SetText("@hotmail.com")
MsgBox("Texto Copiado al ClipBoard")
End Sub
Private Sub Label13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label13.Click
End Sub
Private Sub AyudaToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AyudaToolStripMenuItem.Click
End Sub
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
'Comandos Para eliminar todo el Contenido de las Cajas de Texto'
TextBox1.Clear()
TextBox2.Clear()
TextBox3.Clear()
End Sub
Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox2.TextChanged
End Sub
Private Sub ReiniciarToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ReiniciarToolStripMenuItem.Click
'Boton Reiniciar de el ToolStripMenuItem "Ayuda"'
Label4.Hide()
Label5.Hide()
Label14.Hide()
Label15.Hide()
Label16.Hide()
Timer1.Stop()
Label7.Hide()
Button4.Hide()
Button1.Show()
ProgressBar2.Show()
ProgressBar1.Hide()
TextBox1.Clear()
TextBox2.Clear()
TextBox3.Clear()
Button2.Enabled = True
Button6.Enabled = True
Label8.Enabled = True
Label9.Enabled = True
Label10.Enabled = True
Label11.Enabled = True
Label12.Enabled = True
Button5.Enabled = True
TextBox1.Enabled = True
TextBox2.Enabled = True
TextBox3.Enabled = True
End Sub
Private Sub ComentariosToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComentariosToolStripMenuItem.Click
'Muestra el Formulario3 para Comentarios Sobre el Programa'
Form3.Show()
End Sub
Private Sub ProgressBar2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProgressBar2.Click
End Sub
End Class
FORM2
Public Class Form2
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Close()
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Label2.Show()
Timer1.Start()
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
End
End Sub
End Class
FORM3
Imports System.Net.Mail
Public Class Form3
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
TextBox3.Clear()
TextBox2.Clear()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
TextBox2.Enabled = False
TextBox3.Enabled = False
Button1.Enabled = False
Button2.Enabled = False
Button3.Enabled = False
Button3.Show()
Timer1.Start()
Form4.Show()
End Sub
Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
'Codigo de la "ProgressBar1" incluyendo el codigo SMTP para Hacer la conexión al Correo'
ProgressBar1.Increment(1)
If ProgressBar1.Value = ProgressBar1.Maximum Then
Dim WC As New System.Net.WebClient
Dim MyMailMessage As New MailMessage
MyMailMessage.From = New MailAddress("correo.spammer@gmail.com")
MyMailMessage.To.Add(TextBox1.Text)
MyMailMessage.Subject = (TextBox2.Text)
WC.Dispose()
MyMailMessage.Body = (TextBox3.Text)
Dim SMTPServer As New SmtpClient("smtp.gmail.com")
SMTPServer.Port = 587
SMTPServer.Credentials = New System.Net.NetworkCredential("correo.spammer@gmail.com", "your password")
SMTPServer.EnableSsl = True
Timer1.Stop()
Button3.Enabled = True
Try
SMTPServer.Send(MyMailMessage)
Catch ex As SmtpException
End Try
End If
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Close()
End Sub
Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs)
End Sub
End Class
FORM4
Public Class Form4
Private Sub Form4_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Timer1.Start()
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Button1.Enabled = True
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Close()
End Sub
End Class
Un apunte....estoy seguro (no lo he provado) segun tu al configurarse hay un sitio donde debes meter tu correo y contraseña, no lo he provado pero seguro que con el Olly por ejemplo se puede leer esa información ya que se guardaria como string y cualquier persona que lo mire puede entrar en tu correo.
Deberias de intentar poner una rutina que encrypte el correo y la contraseña.
Si Bueno skapunky Lo que pasa es que tampoco soy un King en Programacion ps, entonces hay cosas que no se xDD.
De todas formas voy a ver que consigo, Gracias por el Apunte.!
Hola, esto no es .NET, te lo muevo ahi...tampoco tenias que pegar el codigo fuente, solo postear el proyecto.
saludos.
Bueh Gracias jejeje
Hola,
enhorabuena por el programa. Lo he probado y funciona correctamente.
Me gustaría preguntarte algo que quizá ya se viendo el código (se muy poco de VB). Utilizas el smtp de gmail para enviar los correos, no?, es decir, te autentificas con una cuenta para poder hacerlo?
Muchas gracias por tu respuesta :-)
Si asi es Alvaro usa el SMTP De Gmail y para Autentificarte puse una Cuenta mia, porque mi idea principal era que la gente pusiera su cuenta para logearse, pero yo se que mas de uno no lo habria hecho porq pensarian que le ivan a agarrar su clave o cosas asi.
Por eso puse una mia que no uso.
Cualquier otra Duda la Respondere! ;D
Gmail creo que envia hasta 500 e-mails por dia.. no es así???
Tu aplicación estaría limitada por ello...
Citar* En caso de acceder a Gmail mediante los protocolos POP o IMAP, es decir, con clientes de correo como Outlook, y enviamos un email a más de 100 personas, nuestra cuenta mostrará el siguiente error y será deshabilitada por unos días: "550 5.4.5 Daily sending quota exceeded.".
* Si usamos el interface de Gmail en el navegador, el límite asciende a 500 personas, deshabilitando la cuenta entre 1 y 3 días y mostrando el error: "Gmail lockdown in section 4″.
* Al parecer, si el número de contactos erróneos o con cuentas desactivadas es superior a 25, nuestra cuenta podrá ser también deshabilitada.
Oye Skeletron Buena data pero.
Yo deje el mio prendido todo una noche con mi correo a ver cuanto llenaba y paso los 5000 ;D yo creo que no tiene ningun problema.
En que parte de Gmail aparece eso :huh:
La pregunta es:
Y vos estas seguro que se mandaron?
para cifrar string en vb usa el karcrack proyect cripter.
no se como ira gmail,pero tanbien se puede con hotmail?
y los email no tienen filtros anti estas cosas?
seria bueno tener 2 correos,uno para enviar y otro para recibir y ver cuantos llegan y a donde llegan.
Cita de: mojolloyo20 en 23 Agosto 2009, 17:01 PM
para cifrar string en vb usa el karcrack proyect cripter.
no se como ira gmail,pero tanbien se puede con hotmail?
y los email no tienen filtros anti estas cosas?
seria bueno tener 2 correos,uno para enviar y otro para recibir y ver cuantos llegan y a donde llegan.
Que loco.. yo tengo como 20 cuentas.. no podria vivir con 1 sola...
1º. Hotmail creo que permite enviar casi sin limite (creo que sin limites).. pero a una cierta cantidad bloquea la cuenta y todos los que has enviado: se van a no deseados..
2º. Gmail te bloqueará la cuenta.. a no ser que no se de que manera estes esquivando su "comprovacion" y crea que vienen de diferentes lugares, y lo toma como legal.. si es así... entonces, has descubierto una vulnerabilidad que puede costar MILLONES DE DOLARES...
Skeletron la verdad es que yo no me le puse complicaciones ni nada al codigo, yo solo quise crear un spammer y Cree un Codigo basico para enviar correos, y el loop de la progressbar que hace que se envien y envien, no me puse a estar buscandole errores al gmail ni cosas de esas.
osea no se porq dejara enviar tantos, pero lo probe con 2 cuentas de Gmail 1 mia y 1 de mi tio y en la de mi tio paso los 1000 y como dije anteriormente en el mio paso los 5000 sin ningun problema.
No se que le pasara al Gmail ;D
bueno estoy investigando como mandar emilios como te dije,y estudio el codigo
pero me lio bastante,y di con el control mapi.
http://www.recursosvisualbasic.com.ar/htm/trucos-codigofuente-visual-basic/101-enviar-mail-mapi.htm
por si te interesa,lo unico que aun no se como anda la cosa,solo que antigua mente
lo usaba el i love you con el ocult.
vosotros que sabeis,funcara con mapi?hoy dia los programas suelentener un motor smpt de esos.
un salu2
Pero al pibe le anda bien el codigo fuente parece..
A ver.. voy a probarlo...
Pregunta:
Con que cuenta envia?? con una que está en el codigo fuente?? una creada especialmente para el programa?
AGREGO:
Anda perfecto.. envió 400 e-mails sin parar rapidamente y no se detuvo...
AGREGO2:
Gmail es una PIJA
Amigo.. tambien te aclaro que hay mucho codigo al pedo ahí....
Mira.. te pasaré a explicar algo...
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
'Codigo Para llamar al Formulario2'
Form2.Show()
End Sub
Ese codigo lo entiendes no?? está en el MAIN de tu programa.. en tu programa principal digamos...
Tu creaste un Metodo o Sub-Rutina (Sub) PRIVADO (Private) COn el nombre: Button2_click
Private Sub Button2_Click
ok????
Luego dijiste (aunque sabemos que se generó todo automaticamente haciendole doble click al boton) que tenga 2 variables éste Metodo.. la SENDER y la E.. que la SENDER es un Objeto y la E es la que trae las propiedades de lo que ha sucedido (ahí dirá que fue un click de boton de mouse)
(ByVal sender As System.Object, ByVal e As System.EventArgs)
(ya tenemos explicado: Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
)
Y luego... viene la palabra: Handles Button2.Click
la palabra HABDLES es como decir:
"Cuando suceda lo que dice aca al lado:"
y luego viene:
Button2.Click
O sea.. has dicho:
Cuando suceda lo que dice aca: CLICK EN BOTON 2
te has dado cuenta???
Entonces todo ésto:
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Significa:
"Che computadora... CUANDO LE HAGAN UN CLICK AL 2º BOTON, ejecutame todo lo que dice dentro de éste metodo privado..."
Y el metodo adentro tiene:
Form2.Show()
End Sub
O sea.. EJECUTAS el Form2 y leugo se termina todo éste SUB....
Bien.... Ahora entiendes que son los METODOS DE ACCION..
Tu de esa amnera controlas ACCIONES que se producen en BOTONES o cosas que hallan en tu programita..
Ahora bien... Analicemos éstos metodos que hay tambien en tu codigo:
Private Sub Label13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label13.Click
End Sub
Private Sub AyudaToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AyudaToolStripMenuItem.Click
End Sub
Que es lo que estas diciendo ahí???
Facil...
en el 1º metodo dices:
Cuando le hagan un click a LABEL13, hacer: NADA
Porque? porque has visto que no dice nada?? abres el Sub.. todo bien.. pero lo cierras con el END SUB y no hay nada adentro...
y luego dices:
Ejecutar éste metodo cuando le hagan click a AYUDA TOLSTRIPMENUITEM... y hacer: NADA NUEVAMENTE..
Entonces.... SI NO HACEN NADA.. Para que lo pones?? Borra ese codigo, te ahorras unos nanosegundos de velocidad ( xD ) y te ahorras espacio y pesará menos el archivo...
Me entiendes?? SIno te explicaré con detalles..
3º posteo consecutivo.. Espero que no se enojen.. pero es que son temas totalmente distintos de lo que hablo...
Otra cosa amigo:
La aplicacion se tilda cuando estas SPAMEANDO...
Porque sucede ésto??
PORQUE ES LA MISMA APLICACION la que está enviando los e-mails..
Y tu dirás? Y QUIEN QUIERES QUE LA ENVIE IDIOTA?!?!?!
Y yo te respondo:
Pues... dile a alguien que te los envie...
Como se hace ésto? CREANDO HILOS...
Ahora preguntate:
Si tienes 1 solo microprocesador en tu Computadora... y tu sabes (porque lo ves) que toda aplicacion en la PC tiene su barra de estado.. donde se van cargando las cosas y la barra va diciendo en que porcentaje va... Entonces.. dices: "Pero como es posible??? si los archivos y configuraciones se estan cargando porque el microprocesador los está cargando... entonces.. quien está mirando que la barra de progreso tiene que ir aumentando???"
Y ahí es cuando sale la idea de: "Porque hay 2 cosas al mismo tiempo... Hay una carga de archivos y configuraciones.. y alguien que va controlando la barra de estado.. y el microprocesador hace un rato cada cosa"
Entonces, cuando empiezas a ver la complegidad de todo lo que hay en tu PC.. te das cuenta que 1 programa.. en realidad se divide en MUCHOS sub-programas que cada uno hace su trabajo.. y todos lo hacen al mismo tiempo
Imagina lo siguiente:
Tienes una PC HIPERSUPERDEMACIADO LENTA.. que suma 2 numeros cada 1 segundo...
Supongamos que tenemos un programa que tiene que sumar 120 numeros... en teoria.. en 1 minuto tu PC terminará de sumarlos.. Pero ese mismo programa.. cada 15 segundos te tiene que decir: "Hola.. como te va?"
Bien.. como haría tu PC para sumar ese super numero sin terminar y a la vez cada 15 segundos darte ese aviso???
No podria si no UTILIZAS HILOS..
Porque??
Porque necesitarias un "acompañante" al lado que diga: "Tu sugue sumando.. yo avisaré cada 15 segundos"
Ahí te das cuenta que tu programa NECESITA 2 pedasos.. el que suma y el que avisa...
OK...
TU TAMBIEN NECESITAS LO MISMO...
Que tu programa cree un HILO (acompañante) en dodne en ese hilo se manden los e-mails... para que tu programa no se tilde.. él ni se enterará de que estas mandando e-mails... porque su amigo lo hará...
Tu tendrias que crear un
Public Sub ENVIARMAILS()
//aqui todo el codigo para enviar e-mails
End Sub
y desde tu aplicacion.. al hacer clickk en el boton: HACER SPAM.. que diga lo siguiente:
Dim hilo1 As New Thread(AddressOf ENVIARMAILS)
Entonces creará tu HILO1..
Cuando quieras dejar de enviar e-mails... haces:
hilo1.close() (creo que era así) y se terminará de enviar e-mails...
Thread (en ingles) = HILO
Aqui te dejo un hermoso tutorial para ello:
http://www.elguille.info/colabora/2007/thepirat_HilosYpuertos.htm
Otra cosa:
Al iniciar tu programa dice que esta cargando cosas... has visto que funciona perfectamenet?? no se tilda.. la barra de progreso anda a la perfeccion..., pero sin embargo estas cargando cosas... Pero.. ¿como has hecho que ande bien, sin utilizar Hilos?
Es obvio que la respuesta es:
IMPOSIBLE...
No estas cargando nada ahí seguramente... es pura "facha" para hacer creer que el programa es una SUPER BESTIA.. es mas... el tiempo e cargar es PERFECTAMENTE FIJO... y al cargar archivos.. la barra deberia ir deteniendose y haciendo cosas... Un programador se da cuenta que no es real.. :)
Cita de: Skeletron en 26 Agosto 2009, 18:23 PM
3º posteo consecutivo.. Espero que no se enojen.. pero es que son temas totalmente distintos de lo que hablo...
Otra cosa amigo:
La aplicacion se tilda cuando estas SPAMEANDO...
Porque sucede ésto??
PORQUE ES LA MISMA APLICACION la que está enviando los e-mails..
Y tu dirás? Y QUIEN QUIERES QUE LA ENVIE IDIOTA?!?!?!
Y yo te respondo:
Pues... dile a alguien que te los envie...
Como se hace ésto? CREANDO HILOS...
Ahora preguntate:
Si tienes 1 solo microprocesador en tu Computadora... y tu sabes (porque lo ves) que toda aplicacion en la PC tiene su barra de estado.. donde se van cargando las cosas y la barra va diciendo en que porcentaje va... Entonces.. dices: "Pero como es posible??? si los archivos y configuraciones se estan cargando porque el microprocesador los está cargando... entonces.. quien está mirando que la barra de progreso tiene que ir aumentando???"
Y ahí es cuando sale la idea de: "Porque hay 2 cosas al mismo tiempo... Hay una carga de archivos y configuraciones.. y alguien que va controlando la barra de estado.. y el microprocesador hace un rato cada cosa"
Entonces, cuando empiezas a ver la complegidad de todo lo que hay en tu PC.. te das cuenta que 1 programa.. en realidad se divide en MUCHOS sub-programas que cada uno hace su trabajo.. y todos lo hacen al mismo tiempo
Imagina lo siguiente:
Tienes una PC HIPERSUPERDEMACIADO LENTA.. que suma 2 numeros cada 1 segundo...
Supongamos que tenemos un programa que tiene que sumar 120 numeros... en teoria.. en 1 minuto tu PC terminará de sumarlos.. Pero ese mismo programa.. cada 15 segundos te tiene que decir: "Hola.. como te va?"
Bien.. como haría tu PC para sumar ese super numero sin terminar y a la vez cada 15 segundos darte ese aviso???
No podria si no UTILIZAS HILOS..
Porque??
Porque necesitarias un "acompañante" al lado que diga: "Tu sugue sumando.. yo avisaré cada 15 segundos"
Ahí te das cuenta que tu programa NECESITA 2 pedasos.. el que suma y el que avisa...
OK...
TU TAMBIEN NECESITAS LO MISMO...
Que tu programa cree un HILO (acompañante) en dodne en ese hilo se manden los e-mails... para que tu programa no se tilde.. él ni se enterará de que estas mandando e-mails... porque su amigo lo hará...
Tu tendrias que crear un
Public Sub ENVIARMAILS()
//aqui todo el codigo para enviar e-mails
End Sub
y desde tu aplicacion.. al hacer clickk en el boton: HACER SPAM.. que diga lo siguiente:
Dim hilo1 As New Thread(AddressOf ENVIARMAILS)
Entonces creará tu HILO1..
Cuando quieras dejar de enviar e-mails... haces:
hilo1.close() (creo que era así) y se terminará de enviar e-mails...
Thread (en ingles) = HILO
Aqui te dejo un hermoso tutorial para ello:
http://www.elguille.info/colabora/2007/thepirat_HilosYpuertos.htm
Otra cosa:
Al iniciar tu programa dice que esta cargando cosas... has visto que funciona perfectamenet?? no se tilda.. la barra de progreso anda a la perfeccion..., pero sin embargo estas cargando cosas... Pero.. ¿como has hecho que ande bien, sin utilizar Hilos?
Es obvio que la respuesta es:
IMPOSIBLE...
No estas cargando nada ahí seguramente... es pura "facha" para hacer creer que el programa es una SUPER BESTIA.. es mas... el tiempo e cargar es PERFECTAMENTE FIJO... y al cargar archivos.. la barra deberia ir deteniendose y haciendo cosas... Un programador se da cuenta que no es real.. :)
Skeletron no seas tan cruel, apenas esta empezando (creo, si no es asi te doy toda la razon ;D) y ya quieres meterle threading? o multi-threading? Porque no le das programacion paralela entonces :laugh: :laugh: :laugh:
Pero tiene razon, no me baje la aplicacion, pero si todo es cierto, deberias hacer algo. No hace falta que crees threads. Pon un timer en el formulario y lo hara por ti, eso si, mete unos cuantos Application.DoEvents() segun sea necesario xD
Pero usalo como solucion temporal hasta que aprendas a usar bien los threads ;)
A por cierto Skeletron, es Thread.Abort() :xD
No se yo.. pero Application.DoEvents() NUNCA ME FUNCIONO!..
Cita de: Skeletron en 26 Agosto 2009, 19:23 PM
No se yo.. pero Application.DoEvents() NUNCA ME FUNCIONO!..
:huh: rarisimo, a mi nunca me fallo xD XD
Cita de: Skeletron en 26 Agosto 2009, 17:56 PM
Amigo.. tambien te aclaro que hay mucho codigo al pedo ahí....
Mira.. te pasaré a explicar algo...
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
'Codigo Para llamar al Formulario2'
Form2.Show()
End Sub
Ese codigo lo entiendes no?? está en el MAIN de tu programa.. en tu programa principal digamos...
Tu creaste un Metodo o Sub-Rutina (Sub) PRIVADO (Private) COn el nombre: Button2_click
Private Sub Button2_Click
ok????
Luego dijiste (aunque sabemos que se generó todo automaticamente haciendole doble click al boton) que tenga 2 variables éste Metodo.. la SENDER y la E.. que la SENDER es un Objeto y la E es la que trae las propiedades de lo que ha sucedido (ahí dirá que fue un click de boton de mouse)
(ByVal sender As System.Object, ByVal e As System.EventArgs)
(ya tenemos explicado: Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
)
Y luego... viene la palabra: Handles Button2.Click
la palabra HABDLES es como decir:
"Cuando suceda lo que dice aca al lado:"
y luego viene:
Button2.Click
O sea.. has dicho:
Cuando suceda lo que dice aca: CLICK EN BOTON 2
te has dado cuenta???
Entonces todo ésto:
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Significa:
"Che computadora... CUANDO LE HAGAN UN CLICK AL 2º BOTON, ejecutame todo lo que dice dentro de éste metodo privado..."
Y el metodo adentro tiene:
Form2.Show()
End Sub
O sea.. EJECUTAS el Form2 y leugo se termina todo éste SUB....
Bien.... Ahora entiendes que son los METODOS DE ACCION..
Tu de esa amnera controlas ACCIONES que se producen en BOTONES o cosas que hallan en tu programita..
Ahora bien... Analicemos éstos metodos que hay tambien en tu codigo:
Private Sub Label13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label13.Click
End Sub
Private Sub AyudaToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AyudaToolStripMenuItem.Click
End Sub
Que es lo que estas diciendo ahí???
Facil...
en el 1º metodo dices:
Cuando le hagan un click a LABEL13, hacer: NADA
Porque? porque has visto que no dice nada?? abres el Sub.. todo bien.. pero lo cierras con el END SUB y no hay nada adentro...
y luego dices:
Ejecutar éste metodo cuando le hagan click a AYUDA TOLSTRIPMENUITEM... y hacer: NADA NUEVAMENTE..
Entonces.... SI NO HACEN NADA.. Para que lo pones?? Borra ese codigo, te ahorras unos nanosegundos de velocidad ( xD ) y te ahorras espacio y pesará menos el archivo...
Me entiendes?? SIno te explicaré con detalles..
hasta el mejor programador se olvida un EVENTO (Asi se llama) sin nada dentro de el, aparte tenes que saber que al compilar el .exe eso se excluye totalmente, podes hacer una prueba hasta en visual basic 6, te lo borra automatico si no tiene nada, en .NET no lo borra pero me imagino que eso no se compila. nanosegundos ? tenes el reloj atomico ? :P , he realizado la prueba con 10 EVENTOS vacios y el tamaño final FINAL del .exe no vario en nada.con esto no quiero criticar simplemente aclarar algunas cosas que por ahi las pueden tomar como "ciertas".
saludos.
Ok Sebas..
Pero.. hay 2 posibilidades por las que él no las puede haber borrado:
1º. porque no sabe como se crearon...
2º. porque se las olvidó....
Yo nunca me olvide de un Metodo Escucha de Evento (así se llama) sin nada dentro..
Cita de: Skeletron en 27 Agosto 2009, 03:15 AM
Ok Sebas..
Pero.. hay 2 posibilidades por las que él no las puede haber borrado:
1º. porque no sabe como se crearon...
2º. porque se las olvidó....
Yo nunca me olvide de un Metodo Escucha de Evento (así se llama) sin nada dentro..
Tal vez como estaba en debug se olvido de limpiar y optimizar el codigo :laugh: :laugh:
Ademas con eso esta gastando unos cuantos bytes en el source xD
No gasta casi nada.. pero.. Si no ahce anda.. para que tenerlo?? ocupa espacio... desacomoda todo... O sea.. ES LA COSA MAS INCOHERENTE DEL MUNDO dejar eso... no busquen escusas.. hay que borrarlo Y YA!
Bueno tenia tiempo sin conectarme puesto problemas con la red :rolleyes:
Lo de los "Eventos Vacios" Me ha pasado muchas veces en otros programas incluyendo este que pasa:
Por ejemplo Pongo algun objeto con alguna accion por ejemplo un Button, entonces despues veo que ese button no tiene funcion o no lo necesito realmente, y lo borro con click Suprimir, entonces el codigo de ese Button no se borra entonces eso es lo que pasa realmente con esos "huequitos" por llamarlos de alguna manera, que quedan hay.
Lo de las progressbar, La progressbar del inicio del programa si es facha eh, la verdad es que no esta cargando nada :xD, Eso de los Hilos no tengo la mas minima idea, Application.DoEvents() "o no lo se usar","o no me funciona", pasamos a lo otro, la progressbar tiene un Timer que la ejecuta, pero no tengo la mas minima idea de hacer que no se Tilde, incluso en otra de version de ese mismo spammer le quite la Progressbar y le puse un Do Loop, y se seguia tildando, la verdad me llamo la atencion eso de los Threadings, Hilos,Etc...
y si...
Soy muy novato en esto xD
Bueno espero que me sigan ayudando si quieren "re-programar" el codigo y subir un test de algo como el Threading "ese", sera bastante agradecido eh!!!
TextBox1.text = "Gracias...!!!"
Mira.. te daré una pequeña explicacion, proqie mi novia me está llamando para que la mime un poco ;)
Todo lo que te explique de HILOS.. es PARA QUE EL PROGRAMA NO SE TILDE..
Y porque no se tildaria?? proque ese "programa hijo" mandaria el SPAM.. y por lo tanto, el programa principal no se tildaria.. porque él no estaria haciendo nada... el prorgama tildado mandando el SPAM estaria oculto... se vería solamente desde el
Adminsitrador de tareas.. (viendo procesos)
Lo que te voy a explicar ahora, no lo hagas en el codigo fuente de esa aplicacion.. sino que create un proyecto nuevo para probar.. una vez que entiendas como es el sistema, lo implementas en tu programa (para no arruinar todo si no lo entiendes)
(amigo.. el texto se me fue muy largo... mañana a la tarde pasate por aquí a ver.. modificare éste post y te dejaré un LINK.. haré un tutorial... saludos)
Ya Actualize el Programa a la version Blaze, este soporta adjuntos y tiene Threads, ya no se tilda :P, Gracias a todos los que Colaboraron :xD.
Ya utiliza Threads???
Bien tio!!:. Geniall... Un gran paso para ti al Multiproceso :)
Saludos y suerte con eso!!!
Dale duro que GMail no se da cuenta :P
siii, Hay que darle a Gmail por el... mail :xD
jaja tiene muy buena pinta esa interfase nueva,aun que los botones se tapan un poco
con el textbox.
y donde esta ese bonito codigo?solo metistes el ejecutable y ami me interesa aprender.
y felicidades por el resto,yo estuve lellendo y por ahora no me entere muy bien como se usan Threads.
un salu2
mojolloyo20
ya esta version la cambie por la V2.0 Ve el post, hay esta incluido el proyecto + el programa.
Saludos!