Capturar webcam con VB.NET

¿Que haremos? Crearemos una aplicación en Visual Studio, la cual hará uso de una webcam para capturar el video en frames independientes y depositarlos en memoria para despues mostralos al usuario a través de un picturebox y un Timer para crear la ilusión de movimiento. ¿Porque lo haremos? Porque es justo y necesario ¿Que necesitamos? [...]

Envío de correo con JavaMail/Netbeans

JavaMail es una expansión de Java que facilita el envío y recepción de e-mail desde código java. JavaMail implementa el protocolo SMTP (Simple Mail Transfer Protocol) así como los distintos tipos de conexión con servidores de correo -TLS, SSL, autentificación con usuario y password, etc [Según SantaWikipedia] ¿Qué necesitamos? JavaMail 1.4.5 Java y Netbeans 6.9 [...]

Proyecto de base de datos Firebird VB

En este proyecto realizaremos una aplicación de base de datos Firebird con el lenguaje de programación de Visual Basic de Microsoft, este proyecto tendrá las funciones básicas de gestión INSERT, DELETE, UPDATE y una interfaz de usuario para utilizarlas. ¿Que necesitamos? Visual Studio 2008 o superior Firebird última versión Firebird ADO.NET Data Provider. Conocimientos básicos [...]

Imprimir imagen con Print

La siguiente clase hace uso de PRINT para imprimir una imagen que se encuentra en un variable de tipo FileInputStream, esta clase a su vez es implementada desde una interfaz que hace fácil su uso, la clase así como todo el proyecto esta comentado. import java.io.File; import javax.print.Doc; import java.io.IOException; import javax.print.DocFlavor; import javax.print.SimpleDoc; import java.io.FileInputStream; [...]

Code Army Bolivia

9/2/12

Proyecto Java con MVC

JAN29


Proyecto completo Java implementando el patrón MVC (Modelo, Vista y Controlador) con Base de datos MySQL, manejo de reportes (iReport),formularios MDI con imagen de fondo, desarrollado en Netbeans 6.9.

Puedes ver de que trata el proyecto en el siguiente video
 

Quieres saber mas

continue reading

6/2/12

Colocar imagen a jFrame y JPanel facil

JAN29


jcMousePanel-1.6.9 nueva versión de mi componente swing para el trabajo con imagenes en jPanel de una manera facil sencilla sin escribir codigo fuente extra en las aplicaciones que desarrollemos en netbeans, viene con muchas mejoras y más opciones de personalización.

Puedes agregar una imagen de fondo y ademas otra imagen la cual podras mover  según tus necesidades
Con esta nueva actualización puedes personalizar el efecto de degradado
Transparencias en imagenes y degradado
Mosaico de imagenes
¿QUIERES SABER MÁS?
Quieres saber mas

continue reading

30/1/12

j2Button componente swing para java

JAN29


j2Button componente swing para java que te permite colocar texto en dos lineas separadas cada una con su propio color de texto, tamaño y tipo de fuente.

No hay mucho que decir sobre este componente, es sencillo de usar y hace uso de una de las propiedadades de JButton el cual acepta codigo HTML y CSS del tipo:

<html> 
<style type="text/css"> 
.estilo1{font-family:Bradley Hand ITC;font-weight:bold; font-size:24px;color:rgb(51, 51, 51);} 
.estilo2{font-family:Rod;font-weight:bold; font-size:12px;color:rgb(102, 102, 102);} 
</style> 
<span class="estilo1">Boton Fachero</span><br/> 
<span class="estilo2">Problem?</span> 
</html> 

Este código se coloca en el TEXT del Jbutton, pero claro, el objetivo de este componente "j2Button", es ahorrarte el trabajo de escribir ese pedazo de código y hacerlo todo de una forma manual y sencilla desde el editor grafico de Netbeans.

Pues nada, eso es todo si quieres probar el componente puedes bajartelo desde el siguiente enlace con manual incluido:
http://link.jc-mouse.net/?id=J2BTNCSSOK

Si te sirve con un gracias me conformo :)

continue reading

17/1/12

NO a la ley S.O.P.A.

JAN29



¿Qué es S.O.P.A y PROTECT-IP?

SOPA y PROTECT-IP son proyectos de leyes introducidos en la Cámara de Representantes de los Estados Unidos el 26 de octubre de 2011, por los cuales se propone cerrar páginas, sin juicio previo, que violen el copyright o faciliten el supuesto infringimento de los derechos de autor.

Proponen la creación de un organismo que tendrá plena potestad para:

  • Obligar a las empresas que brindan un servicio de pago, como PayPal, o que ofrecen dinero a cambio de colocar publicidad online, como anuncios de Google a suspender los servicios a los sitios web considerados infractores o “peligrosos”
  • Restricción en los buscadores que vinculan las webs “peligrosas”.
  • Requerimiento a los proveedores de internet, para que bloqueen el acceso a tales sitios.
En todos los casos, las empresas, proveedores de internet o buscadores que no lo hagan, serán considerados cómplices.

Con esta ley, la sanción por subir un video, imagen o texto que contenga información de algún producto con derechos de autor, será multa o prisión.

Yo estoy en Bolivia, la ley es para Estados Unidos ¿Qué me importa esa ley?

Si debe importarte porque muchas páginas y dominios se hospedan en servidores de EE.UU. de tal manera que S.O.P.A. no solo le afecta a los gringos pecosos, sino también a internautas de cualquier parte del mundo.

Sitios sin fines de lucro como Santa Wikipedia de donde sacas el 90% de tu tarea dejarían de existir. Blogs personales, sitios de videos como Youtube, Cuevana, Xvideos [No te hagas al santo ;) ], de fotos como Flickr, redes sociales como Facebook, Taringa!, Twitter, los buscadores como Google y miles de otras web se reducirían prácticamente a la nada.

"De aprobarse esta ley van a limitarse de forma radical la libertad de expresión y de acceso a la información de todas las personas del mundo"


¿Y entonces que hacemos?

Wikipedia y otros sitios de internet se apagan por un día

La enciclopedia online en su versión en inglés, y otras páginas virtuales, no podrán ser consultadas hoy, a partir de las 5 GTM, debido a una protesta contra dos proyectos de ley antipiratería, bautizados PIPA y SOPA, que se discutirán el próximo 24 de enero en el Congreso norteamericano

el sitio Wikipedia, uno de los cincos mas visitados de la red, en lugar de la información usual que consultan 25 millones de personas diariamente ofrecerá una carta animando a la gente a protestar en contra de esta legislación.

La decisión fue tomada el lunes luego de un debate en el que participaron más de 1.800 personas que aportaron artículos para Wikipedia.

Se trata de la mayor participación que alcanzó el portal en todos los tiempos, lo que pone de manifiesto la preocupación por el proyecto de ley, explicaron desde Wikimedia.

La suspensión del servicio comenzará hoy a las 5 de la mañana (GMT) y se extenderá por 24 horas.

Google, Facebook y Twitter cerrarán sus sitios.

Al menos una decena de los grandes portales de Internet, encabezados por el trío Google, Facebook y Twitter planean cerrar sus sitios el día 23 de enero, en protesta por la aprobación de la ley SOPA en Estados Unidos.

Las tres mayores empresas de Internet, Google, Facebook y Twitter, así como Amazon y Wikipedia se han unido para promover el "cierre" de sus sitios web el día 23 de enero, 24 horas antes de la fecha límite para la aprobación de la controversial ley.

La protesta es porque la criticada ley que actualmente estudia el Congreso cerraría los sitios de piratería sin mayor investigación, lo que la deja abierta a interpretaciones que pudieran dañar a sitios honestos.

Para muchos detractores, dicha ley tiene la intención de censurar y controlar la actividad de Internet en el país y el mundo, más que respaldar la legalidad en cuanto a la distribución de copias pirata.

La ley se podría interpretar de muchas formas, y podría llevar al cierre definitivo de sitios como Facebook y Twitter, si sus usuarios comparten desde una liga a sitios con contenido ilegal.

Los sitios que cerrarían el 23 de enero como medida de protesta incluyen a:

  • Google
  • Yahoo!
  • Facebook
  • Foursquare
  • Twitter
  • Wikipedia
  • Amazon
  • Mozilla
  • AOL
  • eBay
  • PayPal
  • IAC
  • LinkedIn
  • OpenDNS
  • Zynga
Tú tambien puedes ayudar

Puedes firmar y dar tu granito de arena en la siguiente dirección:

http://www.avaaz.org/es/save_the_internet/ 
 

"La unica pelea que se pierde, es la que no se pelea"

continue reading

14/1/12

Componente jcList: Lista con imagenes en java netbeans

JAN29


"jcList", componente beans para Java extendido de un jList el cual te permite manejar imagenes para los elementos de una lista. Te permite personalizar el componente com imagenes externas de tipo JPG, PNG o GIF de cualquier tamaño y tambien cambiar el tipo de color de Fuente.

Componente sencillo pero que ayuda en gran medida a mejorar la interfaz de usuario y hacerla mas agradable para el usuario final. En el siguiente video puede ver como es utilizado desde una interfaz grafica como Netbeans.

Este componente es gratuito y puedes utilizarlo en tus proyectos las veces que quieras, no debes pagar nada por el, pero si este componente te sirvio de alguna manera y quieres contribuir de alguna forma para el desarrollo de nuevos componentes........ya sabes que hacer $$$$$$$$$$$$$$$$ ;) no me enojo en serio :)

Descargate el componente y su manual de uso desde el siguiente enlace:

http://link.jc-mouse.net/?id=LSTBEANS69

Si encuentras algún bug, dimelo para que pueda arreglarlo los pronto posible

bye

continue reading

26/12/11

Patrón MVC en Java con Netbeans

JAN29

El patrón MVC (Modelo, Vista, Controlador), es un patrón de arquitectura de software que separa los datos de una aplicación, la interfaz que ve el usuario de la logica del negocio en tres componentes distintos. Es más frecuente en aplicaciones Web que en aplicaciones de escritorio, sin embargo es aplicable tambien a este, sin ningun problema, Java ya contaba hace rato con Observer y Observable, herramientas que nos ayudan a la interacción entre la interfaz y el modelo, sin embargo, el ejemplo que dejamos a continuación no hace uso de estas herramientas.

La descripción del patrón MVC es:

  • Vista (View): Representa la interfaz de usuario y todas las herramientas con las cuales el usario hace uso del programa.
  • Modelo (Model): Es donde esta toda la lógica del negocio, la representación de todo el sistema incluido la interacción con una base de datos, si es que el programa asi lo requiere.
  • Controlador (Controller): Este componente es el que responde a la interacción (eventos) que hace el usuario en la interfaz y realiza las peticiones al modelo para pasar estos a la vista.
Aún no esta del todo claro, pero con el siguiente ejemplo, lo comprenderemos mejor.
El programa que realizaremos, es una aplicación trivial y sencilla, sin embargo nos ayudara a comprender mejor cual la forma de trabajo de este matrón MVC en Java, utilizaremos para esto, el IDE de Netbeans.

PROYECTO
1. Crea un nuevo proyecto en netbeans, para este ejemplo, el proyecto se llama "jc_mvc_demo". Crea una estructura de paquetes (Controller, Model, View), hacemos esto para separar cada componente, ser más organizados. Debes tener algo como esto.
Como puedes observar, mantenemos el paquete default junto al Main.java que nos crea netbeans, este main es el que nos servira como nuestro index.php de nuestra aplicación, nuestro "lanzador".

2. Empecemos creando la lógica de la aplicación, crea una nueva clase en el paquete Model, llamalo "modelo.java" y añade el siguiente codigo:


01 package model;
02 /**
03  * @web http://jc-mouse.blogspot.com/
04  * @author Mouse
05  * En esta clase se guarda la lógica del sistema, para este sencillo ejemplo
06  * consiste en una SUMA
07  */
08 public class modelo {
09     //Variables
10     private int valor1=28;
11     private int valor2=69;
12     private int total = sumar();
13 
14     public modelo(){}
15 
16     public void set_valor1(int val){
17         this.valor1=val;
18     }
19 
20     public int get_valor1(){
21         return this.valor1;
22     }
23 
24     public void set_valor2(int val){
25         this.valor2=val;
26     }
27 
28     public int get_valor2(){
29         return this.valor2;
30     }
31 
32     public int sumar(){
33         this.total =  this.valor1 + this.valor2;
34         return this.total;
35     }
36 
37     public int get_total(){
38         return this.total;
39     }
40 
41 }

Como vemos, nuestra modelo es sencillo, es nada más que la suma de dos valores enteros, con sus respectivos metodos. continuemos.

3. Diseñemos ahora la interfaz de usuario, nuestra VISTA.
Añade un JFrame al paquete VIEW, llamalo "vista.java", OJO los recuadros marcados con rojo, son los componentes que tendran interacción con el modelo, asi que para evitar confuciones, es mejor renombrarlos, coloca los nombres tal como se ven en la imagen de abajo.
Netbeans, al añadir objetos a nuestro JFrame, automaticamente los coloca como PRIVATE, debemos cambiar esto, para ello selecciona el objeto "vtxt1" y ve asus propiedades, en la pestala CODIGO, elige el campo MODIFICADORES DE VARIABLE, en la ventana que sale, cambia el atributo PRIVATE, por PUBLIC y dale a aceptar. Repite esta acción para todos los objetos que estan marcados con rojo en la imagen anterior.

3. Ahora continuamos con el CONTROLADOR de nuestra aplicación, crea una clase "controlador.java" en el paquete CONTROLLER, el codigo que debes colocar, es:


01 package controller;
02 
03 import java.awt.event.ActionEvent;
04 import java.awt.event.ActionListener;
05 import model.modelo;
06 import view.vista;
07 /**
08  * @web http://jc-mouse.blogspot.com/
09  * @author Mouse
10  */
11 public class controlador implements ActionListener{
12 
13     private vista vista;
14     private modelo modelo;
15 
16     //En el constructor inicializamos nuestros objetos y tambien
17     //añadimos el ActionListener al boton "cmdsumar" de la VISTA
18     public controlador( vista vista , modelo modelo){
19         this.vista = vista;
20         this.modelo = modelo;
21         this.vista.cmdsumar.addActionListener(this);
22     }
23 
24     //Inicia los valores del jFrame VISTA con los datos del MODELO
25     public void iniciar_vista(){
26         vista.setTitle( "Demo MVC * jc-mouse.net" );
27         vista.setLocationRelativeTo(null);
28         vista.vtxt1.setText( String.valueOf(modelo.get_valor1()) );
29         vista.vtxt2.setText( String.valueOf(modelo.get_valor2()) );
30         vista.vtxt3.setText( String.valueOf(modelo.get_total()) );
31     }
32 
33     //La accion del boton de la VISTA es capturado, asi como los valores de
34     //los jtextbox, entonces se realiza la funcion SUMAR y se actualiza
35     //el jtextbox correspondiente al resultado
36     public void actionPerformed(ActionEvent e) {
37         modelo.set_valor1( Integer.valueOf( vista.vtxt1.getText() ) );
38         modelo.set_valor2( Integer.valueOf( vista.vtxt2.getText() ) );
39         modelo.sumar();
40         vista.vtxt3.setText( String.valueOf(modelo.get_total()) );
41     }
42 
43 }

Explicación: nuestra clase controlador, implementa el ActionListener, esto para responder desde esta clase, los eventos realizados desde la interfaz (VISTA), ademas en el constructor de la clase, vemos que se pasan como parametros, la clase VISTA y la clase MODELO,nuestra clase ademas cuenta las funciones, INICIAR() la cual inicializa los valores de la interfaz, como ser el atributo titulo del JFrame, posicionamiento en pantalla, valores iniciales de los jtextbox, etc. tambien tenemos el método actión performed el cual capura el evento realizado desde la interfaz, en nuestro ejemplo es solo un CLICK EN EL BOTON DE MENU CMDSUMAR, obtiene los datos correspondientes e invoca al modelo para procesar la información y obtener una respuesta. Pues bueno, eso es todo, fijese como la interfaz para llegar al modelo, pasa por el controlador y visceversa, cuando el modelo necesita mostrar un dato, pasa por el controlador hasta llegar a la vista, esto claro no es una regla, puedes buscar en google y encontraras varias variaciones de este modelo.

4. Para terminar debemos implementar todo esto en nuestro main.java:


01 package jc_mvc_demo;
02 
03 import controller.controlador;
04 import model.modelo;
05 import view.vista;
06 /**
07 *  @web http://jc-mouse.blogspot.com/
08  * @author Mouse
09  */
10 public class Main {
11     
12     public static void main(String[] args) {
13 
14         //nuevas instancias de clase
15         modelo modelo = new modelo();
16         vista vista = new vista();        
17         controlador controlador = new controlador( vista , modelo );
18         //se inicia la vista
19         controlador.iniciar_vista();
20 
21         vista.setVisible(true);
22 
23     }
24 
25 }

Ejecuta el programa para terminar.
El patrón MVC, nos permite cambiar la interfaz de usuario (VISTA), sin tocar en lo absoluto el MODELO de la aplicación, y realizar pequeños cambios en el controlador, minimos cambios, como podemos observar en la imagen superior, tenemos la interfaz 1, la cual creamos en este tutorial, y ademas una segunda interfaz, totalmente distina, sin embargo funciona bajo el mismo MODELO.

Descarga  el ejemplo e investiga como cambiar la interfaz1 a la interfaz2

El proyecto completo, esta "AQUI"


Suerte :)

continue reading

20/11/11

Envio de datos de Applets a PHP

JAN29

En este tutorial aprenderemos a enviar datos desde Applets Java hacia un servidor con PHP mediante POST y esperar una respuesta para mostrar desde el Applet.

¿Que necesitamos?

  • IDE Netbeans 6.9 o Sup
  • Conocimientos de PHP
  • Para las pruebas un servidor web instalado en el equipo

Proyecto.
1.- Crea un nuevo proyecto en Netbeans (nombre= jpFormulario) sin el main, es un applet asi que no necesita de eso, añade un Formulario JApplet (nombre=interfaz.java) y un archivo de clase (nombre=formulario.java), debes tener algo como esto:

2. A nuestra clase interfaz, debemos añadirle objetos y formar un simple formulario, este formulario tendra 4 campos para el nombre, apellido paterno, materno y el correo electronico, ademas de un boton y un JTextArea donde colocaremos la respuesta del servidor. En la imagen de abajo puedes ver lo que queremos lograr, los campos marcados con punto rojo, son donde debes tener cuidado, debes colocar el mismo nombre que se ve, es importante
3. Ahora debemos crear el codigo de envio de formulario, para esto debemos agregar a la clase formulario.java el siguiente codigo:

CLASE: formulario.java

01 package jpFormulario;
02 import java.io.BufferedReader;
03 import java.io.IOException;
04 import java.io.InputStreamReader;
05 import java.io.OutputStreamWriter;
06 import java.net.URL;
07 import java.net.URLConnection;
08 import java.net.URLEncoder;
09 /**
10  * @web http://jc-mouse.blogspot.com/
11  * @author Mouse
12  */
13 public class formulario {
14 
15         /* FUNCION PARA ENVIAR LOS DATOS AL SERVIDOR */
16     public String enviardatos(String name, String app, String apm, String mail)
17     {
18         try {
19             //se forma la cadena con los datos a enviar
20             String dataString ="name="+name+"&app="+app+"&apm="+apm+"&mail="+mail;
21             URLEncoder.encode(dataString, "UTF-8");
22             // Send data
23             URL url = new URL("http://localhost/japplet/jpFormulario/index.php");
24             URLConnection conn = url.openConnection();
25             conn.setDoOutput(true);
26             OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
27             wr.write(dataString);
28             wr.flush();
29             //se obtiene la respuesta del servidor
30             BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
31             String linea, tmp = "";
32              while (( linea = rd.readLine()) != null)
33                  tmp+=linea;
34             //se da un formato de salida al texto
35             tmp = formato(tmp);
36             wr.close();
37             rd.close();
38 
39             return tmp;
40         } catch (IOException ex) {
41             return "";
42         }
43     }
44 
45     /* funcion que dada una cadena de forma:
46      * texto-texto-texto....
47      * separa con un guion, la separa y devuelve
48      * en lineas
49      */
50     private String formato(String tmp)
51     {
52        int j = 0;
53        String [] r = tmp.split("-");
54        tmp="";
55        while(j<r.length){
56            tmp+=r[j]+"\n";
57            j++;
58        }
59        return tmp;
60     }
61 
62 }

Explicación:

La clase se reduce a una función enviardatos(), que necesita como parametros los datos a enviar (nombre, apellidos y email) y que devuelve como resultado un String, este estring puede ser cualquier cosa que especifiquemos en el codigo PHP, este lo veremos mas adelante.

En la linea 20: formamos lo que sera nuestra cadena de datos muy similar a lo que hacemos en javascript y ajax.

En la linea 23: debemos colocar la ruta absluta del archivo PHP al que queremos conectarnos, recuerda que un applet se ejecuta desde en la PC del cliente y el PHP desde el servidor, esta linea debe tener la forma de:


http://www.mipaginaweb.net/carpeta/micodigo.php

El resto de codigo que le continua es para abrir la conexion, mandar los datos y esperar respuesta.

desde la linea 30 podemos ver como se obtiene la respuesta, esta sera un string al cual ya podemos dar el uso que queramos.

Para este ejemplo recibimos una cadena de tipo "texto-texto-texto...." los datos como se observa estan separados por guiones, entonces utilizando el split() formamos un array, damos formato y mostramos al usuario mediante el JTextArea, esto no tiene nada que ver con el envio de datos y solo se lo hace para tener algo más presentable al usuario, bien podriamos esperar un 1 o 0 como respuesta del servidor y mostrar una venta de aviso.

4. Para terminar el applet debemos implementar esta clase en la clase interfaz.java. Si seguiste las instrucciones de arriba, solamente deberas añadir al JButton el siguiente codigo:


01  private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
02         formulario f = new formulario();
03         RESPUESTA.setText(
04                 f.enviardatos(name.getText(), app.getText(), apm.getText(), mail.getText())
05         );
06     }    

Explicación: Creamos una instancia de la clase formulario.java y al objeto jTextArea, asignaremos la funcion enviardatos() con los datos que obtendremos de los campos del formulario, como la respuesta que obtendremos es un String, esta la mostraremos directamente en el JTextArea.

5. Nos falta el codigo de nuestro archivo PHP, este es:

PHP: index.php

01 <?php
02  //comprobamos que los datos POST existen y fueron recibidos correctamente
03  if( isset($_POST['name']) and isset($_POST['app'])  
04        and isset($_POST['apm'])  and isset($_POST['mail'])  )
05  {
06    //se colocan los datos en  variables
07    $name = $_POST['name'];
08    $app = $_POST['app'];
09    $apm = $_POST['apm'];
10    $mail = $_POST['mail'];
11    //con los datos que nos pasa el applet ya pdemos proseguir con el registro en la BD
12    // [ interaccion con la base de datos ]
13    // ....
14    //despues podemos devolver un mensaje al usuario
15    $guion="-";
16    echo 'GRACIAS POR REGISTRARTE'.$guion;
17    echo 'Nombre: '.$name.$guion;
18    echo 'Ap. Paterno:'.$app.$guion;
19    echo 'Ap. Materno:'.$apm.$guion;
20    echo 'Mail:'.$mail.$guion;
21    echo $guion;
22    echo 'FIN';
23  }
24  else
25  {
26   echo "Error: No existen datos";
27  }
28 ?> 

Para los que conocen PHP se daran cuenta de que el archivo no hace mas que esperar unos parametros POST, estos paramatros los asiga a unas variables y ya desde aqui podemos tratar los datos como más nos convenga, si no existen datos POST, el archivo devuelve una cadena de error "Error: No existen datos", para el ejemplo de este tutorial, no manejamos base de datos para facilitar las cosas, asi que el archivo se reduce a obtener los datos POST, formar una cadena de respuesta y escribir esta con la sentencia ECHO, a que es igual a ajax :/

IMPORTANTE: este archivo PHP debe estar en un servidor web junto al applet o no, ya es cuestion de gustos. Si ejecutamos la aplicación desde el netbeans, no necesitamos de un archivo html, el appletviewer nos muestra el resultado.
Si lo implementamos desde un servidor web necesitamos crear un archivo HTML que nos implemente el applet.

Puedes ver como queda todo desde este video

El proyecto esta aqui:
Click para descargar

enjoy

continue reading

3/11/11

Eliminar malware Security Sphere 2012

JAN29


Security Sphere 2012 es un malware que se hace pasar por un antivirus con el objeto de engañar a la gente y sacarle plata o peor aun, robarle información personal, este tipo de bichos existen muchos en la red como el que aparecio a finales del año pasado Anti Spyware 2011 con las mismas caracteristicas y los que apareceran el proximo año, si es que no es el fin del mundo :(

Entre las acciones que toma este malware tenemos:
  • Bloquea la ejecución de programas, cualquiera de ellos (antivirus, administrador de tareas, etc)
  • Impide la ejecución de script *.VBS, *.BAT, etc
  • Se mete en el registro para ejecutarse cada reinicio de windows
  • Coloca una imagen de color azul como fondo de pantalla, esto solo para alarmar más al usuario :)
  • Cada cierto tiempo muestra una ventanita invitando a comprar el supuesto antivirus
Pero este malware esta mal hecho, esta mal hecho porque no oculta los archivos del sistema, no deshabilita el modo seguro y se mete en los archivos temporales lo que hace facil su hubicación y destrucción.

ELIMINACIÓN DEL MALWARE

1. Reincia tu PC y presiona F8 para ingresar a modo seguro, espera unos minutos a que windows inicie.

2. Con tu PC en modo seguro el malware no se ejecuta, asi que podemos utilizar cualquier programa *.exe incluso script.

3. Si tienes tus archivos ocultos, ve al menu HERRAMIENTAS -> OPCIONES DE CARPETA -> PESTAÑA VER y busca la opcion "Mostrar todos los archivos y carpetas ocultos", dale clic en aceptar

4. Este bicho busca nido en la unidad C:\ de windows, en la carpeta PROGRAMDATA, esto solo para sistemas Windows Vista y Windows Seven. se camufla creando una carpeta con números y letras, ordena las carpetas por "fecha de modificación" y sera la ultima que se creo como se puede ver en la imagen, pero OJO, no sera la misma que la imagen, estos malwares se crean utilizando nombres alfanumericos al azar asi que tu tendras otra carpeta con diferente nombre.
Como se ve en la imagen, reconocemos el malware por su icono que es el mismo que nos muestra en la molestosa ventana de propaganda.

5. Ahora procederemos a su eliminacion, como se ve en la imagen, lo que yo hago es RENOMBRAR el archivo original eB32111DnDb32111.exe por otro, por ejemplo: eB32111DnDb32111.exe_ESTO_ES_UN_MALWARE.

¿Porque hago esto?
Pues porque como programador friki :) quiero guardar el malware para investigaciones posteriores, diseccionarlo y estudiarlo ;)

Tú puedes simplemente eliminarlo a no se ser que quieras guardarlo como recuerdo :/

Dependiendo si lo hallas renombrado o eliminado, continuemos...

6. Para terminar debemos limpiar el registro del sistema, para esto utilizaremos el programa CCLEANER, ejecutalo y escoge la opcion REGISTRO y ejecuta la limpieza.
Como vemos en la imagen te mostrara la hubicación de la clave de registro que creo el malware, solo dale a reparar seleccionados -> reparar todas las seleccionadas.

Como dijimos al principio este malware tambien crea su respaldo en los archivos temporales, estos archivos tienen el nombre de t849.tmp, 689.tmp, etc al igual que el malware principal, toman nombres al azar, su tamaño esta entre los 3,9 MB, para eliminarlos a todos, selecciona la opcion de ccleaner -> LIMPIADOR, el que tiene forma de una escoba y elimina todos los archivos temporales de internet.

Eso es todo, reinicia el sistema e ingresa en modo normal y el malware habra desaparecido

continue reading

Post recomendado