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

 

 


Tema destacado: Tutorial básico de Quickjs


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  escritorio remoto en java
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: escritorio remoto en java  (Leído 25,721 veces)
Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: escritorio remoto en java
« Respuesta #10 en: 10 Octubre 2009, 16:18 pm »

esta preguntando sobre java, no creo que sea comveniente ofrecer ese tipo de soluciones...

Saludos


En línea

_rez3t45_

Desconectado Desconectado

Mensajes: 30



Ver Perfil
Re: escritorio remoto en java
« Respuesta #11 en: 21 Octubre 2009, 19:56 pm »

holas d nuevo a todos .. estuve fuera por un gran tiempo ,, formatie mi pc (cosa que no hacia desde hace 1 año) gracias al virus sality , instalar programas asu....  :(

EN fin logre ver como mandar la imagen en un arreglo de bytes .. y como recibirlo
pero me dices que seria mejor con canvas para su impresion en un Jlabel( recien la clase pasada use cambas pero en aplicaciones moviles ) . tambien se uza en jframe ?

por otro lado tambien encontre informacion como mover el mouse del cliente con la clase robot xD ,, ya poco a poco voy entendiendo todo   ;-)

espero acabarlo pronto para mostrarle mi codigo completo y de paso me den algunos consejos    :D



En línea

<-- ZmPlmnTe Punk -->
Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: escritorio remoto en java
« Respuesta #12 en: 21 Octubre 2009, 19:57 pm »

holas d nuevo a todos .. estuve fuera por un gran tiempo ,, formatie mi pc (cosa que no hacia desde hace 1 año) gracias al virus sality , instalar programas asu....  :(

EN fin logre ver como mandar la imagen en un arreglo de bytes .. y como recibirlo
pero me dices que seria mejor con canvas para su impresion en un Jlabel( recien la clase pasada use cambas pero en aplicaciones moviles ) . tambien se uza en jframe ?

por otro lado tambien encontre informacion como mover el mouse del cliente con la clase robot xD ,, ya poco a poco voy entendiendo todo   ;-)

espero acabarlo pronto para mostrarle mi codigo completo y de paso me den algunos consejos    :D


jeje yo tenia metodos programados en la calse robot para abrir la barra de inicio, para apagara el pc, para abrrir ventanas todo el rato, paa abrir el browwser y meter una direcion la que sea...

Saludos
En línea

_rez3t45_

Desconectado Desconectado

Mensajes: 30



Ver Perfil
Re: escritorio remoto en java
« Respuesta #13 en: 23 Octubre 2009, 20:03 pm »

waa ! xD
holas de nuevo ,,,
genere este codigo gracias ala ayuda del post de casiDiablo en transferecia de img ,,
Bueno lo hice a mi estilo  ;D
lo que quisiera saber si la forma en que imprimo las imagenes que llegan es la correcta o me aconsejarian otra forma ,, cosa que lo probe en mi casa y dio unos 2 segundo luego se detuvo .. creo que es por mi pc que solo tnego 512 ram ..lo probare en mi uni xD ,,

Envia_img
Código:
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.ObjectOutputStream;
import java.net.Socket;
import javax.imageio.ImageIO;
import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class envia_img extends JFrame {
   
     public envia_img()throws Exception{
         setSize(100,100);
         setVisible(true);
         Thread.currentThread().sleep(5000);
         enviando_img();
     }
   
    public void enviando_img(){
         while(true){
        try{
            Socket cliente = new Socket("192.168.1.32", 6060);
            ObjectOutputStream salida = new ObjectOutputStream(cliente.getOutputStream());
            salida.flush(); 
            Rectangle dimension_pantalla = new   Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
            Robot robot = new Robot();
            BufferedImage img_bufeer = robot.createScreenCapture(dimension_pantalla);           
         
            ByteArrayOutputStream salida_img = new ByteArrayOutputStream();
           
            ImageIO.write(img_bufeer, "jpg", salida_img);
         
            byte[] img_en_bytes = salida_img.toByteArray();
            //ENVIO
            salida.writeObject(img_en_bytes);
            salida.flush();
           
            cliente.close();
        }catch(Exception e){
            JOptionPane.showMessageDialog(null, e.getMessage());
        }       
    }}

    public static void main(String args[])throws Exception{
        JFrame.setDefaultLookAndFeelDecorated(true);
        envia_img proyecto_envia = new envia_img();
        proyecto_envia.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

Y EL que recibe las Imgnes


Código:
import java.awt.image.BufferedImage;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.net.ServerSocket;
import java.net.Socket;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;

public class receptor_img extends JFrame implements Runnable{

    JLabel lbl_img;
    ImageIcon img;

    public receptor_img(){

        setSize(100,100);
        setVisible(true);
        Thread hilo = new Thread(this);
        hilo.start();
    }

    public void run(){
        try{
        ServerSocket servidor = new ServerSocket(6060);
        while(true){
            Socket conexión = servidor.accept();
            ObjectInputStream entrada = new ObjectInputStream(conexión.getInputStream());
            construyendo_img(entrada);

             entrada.close();
             conexión.close();
        }
    }catch(Exception e){JOptionPane.showMessageDialog(null, e.getMessage());}
                    }
   
    public void construyendo_img(ObjectInputStream entrada)throws IOException{       
            try{
                byte[] bytes_img = (byte[]) entrada.readObject();
                ByteArrayInputStream entrada_img = new ByteArrayInputStream(bytes_img);
                BufferedImage img_bufeer = ImageIO.read(entrada_img);
                //guardandola en Disco
                //String ruta = "c:/tu_fot0.jpg";
                 //  ImageIO.write(img_bufeer, "jpg",new File(ruta));
                //al recibirlo lo muestro en pantalla px xD
                img = new ImageIcon(img_bufeer);
                lbl_img = new JLabel();

                lbl_img.setIcon(img);

                getContentPane().add(lbl_img);
                lbl_img.setBounds(20,50,400,900);
                               
            }catch(Exception e){JOptionPane.showMessageDialog(null, e.getMessage());}         
    }

    public static void main(String args[])throws Exception{
        JFrame.setDefaultLookAndFeelDecorated(true);
        receptor_img proyecto_recibe = new receptor_img();
        proyecto_recibe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

LOgre transferir las imagenes por socket ,, esta en comentario arriba
ahora estoy en probar esto en mi uni   :D
el de mover el mouse si sale . tambien lo pruebo en mi uni ,,,,
luego los juntare px

gracias por la ayuda por que cuando empece ni sabia extender una clase a Jframe  ;-)

En línea

<-- ZmPlmnTe Punk -->
Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: escritorio remoto en java
« Respuesta #14 en: 23 Octubre 2009, 23:08 pm »

waa ! xD
holas de nuevo ,,,
genere este codigo gracias ala ayuda del post de casiDiablo en transferecia de img ,,
Bueno lo hice a mi estilo  ;D
lo que quisiera saber si la forma en que imprimo las imagenes que llegan es la correcta o me aconsejarian otra forma ,, cosa que lo probe en mi casa y dio unos 2 segundo luego se detuvo .. creo que es por mi pc que solo tnego 512 ram ..lo probare en mi uni xD ,,

Envia_img
Código:
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.ObjectOutputStream;
import java.net.Socket;
import javax.imageio.ImageIO;
import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class envia_img extends JFrame {
   
     public envia_img()throws Exception{
         setSize(100,100);
         setVisible(true);
         Thread.currentThread().sleep(5000);
         enviando_img();
     }
   
    public void enviando_img(){
         while(true){
        try{
            Socket cliente = new Socket("192.168.1.32", 6060);
            ObjectOutputStream salida = new ObjectOutputStream(cliente.getOutputStream());
            salida.flush(); 
            Rectangle dimension_pantalla = new   Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
            Robot robot = new Robot();
            BufferedImage img_bufeer = robot.createScreenCapture(dimension_pantalla);           
         
            ByteArrayOutputStream salida_img = new ByteArrayOutputStream();
           
            ImageIO.write(img_bufeer, "jpg", salida_img);
         
            byte[] img_en_bytes = salida_img.toByteArray();
            //ENVIO
            salida.writeObject(img_en_bytes);
            salida.flush();
           
            cliente.close();
        }catch(Exception e){
            JOptionPane.showMessageDialog(null, e.getMessage());
        }       
    }}

    public static void main(String args[])throws Exception{
        JFrame.setDefaultLookAndFeelDecorated(true);
        envia_img proyecto_envia = new envia_img();
        proyecto_envia.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

Y EL que recibe las Imgnes


Código:
import java.awt.image.BufferedImage;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.net.ServerSocket;
import java.net.Socket;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;

public class receptor_img extends JFrame implements Runnable{

    JLabel lbl_img;
    ImageIcon img;

    public receptor_img(){

        setSize(100,100);
        setVisible(true);
        Thread hilo = new Thread(this);
        hilo.start();
    }

    public void run(){
        try{
        ServerSocket servidor = new ServerSocket(6060);
        while(true){
            Socket conexión = servidor.accept();
            ObjectInputStream entrada = new ObjectInputStream(conexión.getInputStream());
            construyendo_img(entrada);

             entrada.close();
             conexión.close();
        }
    }catch(Exception e){JOptionPane.showMessageDialog(null, e.getMessage());}
                    }
   
    public void construyendo_img(ObjectInputStream entrada)throws IOException{       
            try{
                byte[] bytes_img = (byte[]) entrada.readObject();
                ByteArrayInputStream entrada_img = new ByteArrayInputStream(bytes_img);
                BufferedImage img_bufeer = ImageIO.read(entrada_img);
                //guardandola en Disco
                //String ruta = "c:/tu_fot0.jpg";
                 //  ImageIO.write(img_bufeer, "jpg",new File(ruta));
                //al recibirlo lo muestro en pantalla px xD
                img = new ImageIcon(img_bufeer);
                lbl_img = new JLabel();

                lbl_img.setIcon(img);

                getContentPane().add(lbl_img);
                lbl_img.setBounds(20,50,400,900);
                               
            }catch(Exception e){JOptionPane.showMessageDialog(null, e.getMessage());}         
    }

    public static void main(String args[])throws Exception{
        JFrame.setDefaultLookAndFeelDecorated(true);
        receptor_img proyecto_recibe = new receptor_img();
        proyecto_recibe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

LOgre transferir las imagenes por socket ,, esta en comentario arriba
ahora estoy en probar esto en mi uni   :D
el de mover el mouse si sale . tambien lo pruebo en mi uni ,,,,
luego los juntare px

gracias por la ayuda por que cuando empece ni sabia extender una clase a Jframe  ;-)


puede ser que deje de transferir porque el heap se satura prueba a descomponer las imagenes en datos de bytes unicos y transferirlas de poco en poco, en teoria no dbeeria darte problemas, y menos con imagenes :s

Pero peude ser que si xD

Saludos
En línea

_rez3t45_

Desconectado Desconectado

Mensajes: 30



Ver Perfil
Re: escritorio remoto en java
« Respuesta #15 en: 24 Octubre 2009, 08:47 am »

JA ! ya  di con mi error !

en El recpetor estaba mi error

Código:
JLabel lbl_img = new JLabel();
aunque este no tant0 ,,

aka zi :
Código:
public void construyendo_img(ObjectInputStream entrada)throws IOException{       
            try{
                byte[] bytes_img = (byte[]) entrada.readObject();
                ByteArrayInputStream entrada_img = new ByteArrayInputStream(bytes_img);
                BufferedImage img_bufeer = ImageIO.read(entrada_img);
                //guardandola en Disco
                String ruta = "c:/tu_aka.jpg";
                   ImageIO.write(img_bufeer, "jpg",new File(ruta));
                //al recibirlo lo muestro en pantalla px xD
                img = new ImageIcon(img_bufeer); 
                lbl_img.setIcon(img);

                getContentPane().add(lbl_img);
                lbl_img.setBounds(20,50,400,900);

                img_bufeer.flush();
                               
            }catch(Exception e){JOptionPane.showMessageDialog(null, e.getMessage());}         
    }

agrege un grande "flush()" al img_buffer

 ;D

bueno aun sigo sin probarlos en dos pc reales .. per0 si dio en mi pc
.. veia como hacia todo en una pantallita de mi  formulario
azi que si deve salir ..

algun alma piadosa que lo pruebe  x q no tengo 2 pc  :S !
En línea

<-- ZmPlmnTe Punk -->
jdiazram

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Re: escritorio remoto en java
« Respuesta #16 en: 26 Abril 2011, 13:13 pm »

Holas
Muy buena aplicación, me resulta en el mismo PC, pero no pasa nada cuando lo intento en 2 pc a traves de la misma red, conectados por wifi ambos.
Sabes si se puede hacer?

Saludos
En línea

Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema conectarse servidor remoto java.
Programación General
SARGE553413 0 2,116 Último mensaje 30 Marzo 2013, 16:46 pm
por SARGE553413
¿Cómo ejecutar un programa de Java en el escritorio?
Java
luchi 6 7,900 Último mensaje 6 Marzo 2015, 12:02 pm
por Usuario Invitado
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines